@ngrx/data 14.3.2 → 15.0.0-beta.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 (50) hide show
  1. package/esm2020/src/actions/entity-action-factory.mjs +3 -3
  2. package/esm2020/src/dataservices/default-data.service.mjs +3 -3
  3. package/esm2020/src/dataservices/entity-cache-data.service.mjs +3 -3
  4. package/esm2020/src/dataservices/entity-data.service.mjs +3 -3
  5. package/esm2020/src/dataservices/http-url-generator.mjs +3 -3
  6. package/esm2020/src/dataservices/persistence-result-handler.service.mjs +3 -3
  7. package/esm2020/src/dispatchers/entity-cache-dispatcher.mjs +3 -3
  8. package/esm2020/src/dispatchers/entity-dispatcher-default-options.mjs +3 -3
  9. package/esm2020/src/dispatchers/entity-dispatcher-factory.mjs +3 -3
  10. package/esm2020/src/effects/entity-cache-effects.mjs +3 -3
  11. package/esm2020/src/effects/entity-effects.mjs +3 -3
  12. package/esm2020/src/entity-data-config.mjs +2 -0
  13. package/esm2020/src/entity-data-without-effects.module.mjs +10 -141
  14. package/esm2020/src/entity-data.module.mjs +11 -102
  15. package/esm2020/src/entity-metadata/entity-definition.service.mjs +3 -3
  16. package/esm2020/src/entity-services/entity-collection-service-elements-factory.mjs +3 -3
  17. package/esm2020/src/entity-services/entity-collection-service-factory.mjs +3 -3
  18. package/esm2020/src/entity-services/entity-services-base.mjs +3 -3
  19. package/esm2020/src/entity-services/entity-services-elements.mjs +3 -3
  20. package/esm2020/src/index.mjs +4 -2
  21. package/esm2020/src/provide-entity-data.mjs +222 -0
  22. package/esm2020/src/reducers/entity-cache-reducer.mjs +3 -3
  23. package/esm2020/src/reducers/entity-collection-creator.mjs +3 -3
  24. package/esm2020/src/reducers/entity-collection-reducer-methods.mjs +3 -3
  25. package/esm2020/src/reducers/entity-collection-reducer-registry.mjs +3 -3
  26. package/esm2020/src/reducers/entity-collection-reducer.mjs +3 -3
  27. package/esm2020/src/selectors/entity-selectors$.mjs +3 -3
  28. package/esm2020/src/selectors/entity-selectors.mjs +3 -3
  29. package/esm2020/src/utils/correlation-id-generator.mjs +3 -3
  30. package/esm2020/src/utils/default-logger.mjs +3 -3
  31. package/esm2020/src/utils/default-pluralizer.mjs +3 -3
  32. package/fesm2015/ngrx-data.mjs +293 -291
  33. package/fesm2015/ngrx-data.mjs.map +1 -1
  34. package/fesm2020/ngrx-data.mjs +293 -289
  35. package/fesm2020/ngrx-data.mjs.map +1 -1
  36. package/package.json +6 -6
  37. package/schematics-core/index.js +1 -3
  38. package/schematics-core/index.js.map +1 -1
  39. package/schematics-core/utility/libs-version.js +1 -1
  40. package/schematics-core/utility/libs-version.js.map +1 -1
  41. package/schematics-core/utility/visitors.js +1 -2
  42. package/schematics-core/utility/visitors.js.map +1 -1
  43. package/src/entity-data-config.d.ts +15 -0
  44. package/src/entity-data-without-effects.module.d.ts +5 -28
  45. package/src/entity-data.module.d.ts +2 -14
  46. package/src/index.d.ts +3 -1
  47. package/src/provide-entity-data.d.ts +78 -0
  48. package/src/selectors/entity-selectors.d.ts +1 -1
  49. package/schematics-core/utility/decorators.js +0 -15
  50. package/schematics-core/utility/decorators.js.map +0 -1
@@ -1,15 +1,15 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, InjectionToken, Optional, Inject, NgModule } from '@angular/core';
2
+ import { Injectable, InjectionToken, Optional, Inject, ENVIRONMENT_INITIALIZER, inject, makeEnvironmentProviders, NgModule } from '@angular/core';
3
3
  import { filter, map, delay, timeout, catchError, shareReplay, take, mergeMap, withLatestFrom, concatMap } from 'rxjs/operators';
4
4
  import * as i1 from '@angular/common/http';
5
5
  import { HttpParams } from '@angular/common/http';
6
6
  import * as i4 from 'rxjs';
7
7
  import { throwError, of, race, asyncScheduler, merge } from 'rxjs';
8
8
  import { createEntityAdapter } from '@ngrx/entity';
9
- import * as i1$1 from '@ngrx/store';
10
- import { ScannedActionsSubject, createSelector, createFeatureSelector, compose, combineReducers, StoreModule } from '@ngrx/store';
11
- import * as i1$2 from '@ngrx/effects';
12
- import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
9
+ import * as i3 from '@ngrx/store';
10
+ import { ScannedActionsSubject, createSelector, createFeatureSelector, compose, ReducerManager, combineReducers } from '@ngrx/store';
11
+ import * as i1$1 from '@ngrx/effects';
12
+ import { createEffect, ofType, EffectSources } from '@ngrx/effects';
13
13
 
14
14
  class EntityActionFactory {
15
15
  // polymorphic create for the two signatures
@@ -53,9 +53,9 @@ class EntityActionFactory {
53
53
  // return `${op} [${tag}]`.toUpperCase(); // example of an alternative
54
54
  }
55
55
  }
56
- /** @nocollapse */ EntityActionFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityActionFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
57
- /** @nocollapse */ EntityActionFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityActionFactory });
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityActionFactory, decorators: [{
56
+ /** @nocollapse */ EntityActionFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityActionFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
57
+ /** @nocollapse */ EntityActionFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityActionFactory });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityActionFactory, decorators: [{
59
59
  type: Injectable
60
60
  }] });
61
61
 
@@ -664,9 +664,9 @@ class DefaultHttpUrlGenerator {
664
664
  };
665
665
  }
666
666
  }
667
- /** @nocollapse */ DefaultHttpUrlGenerator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultHttpUrlGenerator, deps: [{ token: Pluralizer }], target: i0.ɵɵFactoryTarget.Injectable });
668
- /** @nocollapse */ DefaultHttpUrlGenerator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultHttpUrlGenerator });
669
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultHttpUrlGenerator, decorators: [{
667
+ /** @nocollapse */ DefaultHttpUrlGenerator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultHttpUrlGenerator, deps: [{ token: Pluralizer }], target: i0.ɵɵFactoryTarget.Injectable });
668
+ /** @nocollapse */ DefaultHttpUrlGenerator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultHttpUrlGenerator });
669
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultHttpUrlGenerator, decorators: [{
670
670
  type: Injectable
671
671
  }], ctorParameters: function () { return [{ type: Pluralizer }]; } });
672
672
  /** Remove leading & trailing spaces or slashes */
@@ -829,9 +829,9 @@ class DefaultDataServiceFactory {
829
829
  return new DefaultDataService(entityName, this.http, this.httpUrlGenerator, this.config);
830
830
  }
831
831
  }
832
- /** @nocollapse */ DefaultDataServiceFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultDataServiceFactory, deps: [{ token: i1.HttpClient }, { token: HttpUrlGenerator }, { token: DefaultDataServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
833
- /** @nocollapse */ DefaultDataServiceFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultDataServiceFactory });
834
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultDataServiceFactory, decorators: [{
832
+ /** @nocollapse */ DefaultDataServiceFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultDataServiceFactory, deps: [{ token: i1.HttpClient }, { token: HttpUrlGenerator }, { token: DefaultDataServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
833
+ /** @nocollapse */ DefaultDataServiceFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultDataServiceFactory });
834
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultDataServiceFactory, decorators: [{
835
835
  type: Injectable
836
836
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: HttpUrlGenerator }, { type: DefaultDataServiceConfig, decorators: [{
837
837
  type: Optional
@@ -948,9 +948,9 @@ class EntityDefinitionService {
948
948
  Object.assign(this.definitions, definitions);
949
949
  }
950
950
  }
951
- /** @nocollapse */ EntityDefinitionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDefinitionService, deps: [{ token: ENTITY_METADATA_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
952
- /** @nocollapse */ EntityDefinitionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDefinitionService });
953
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDefinitionService, decorators: [{
951
+ /** @nocollapse */ EntityDefinitionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDefinitionService, deps: [{ token: ENTITY_METADATA_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
952
+ /** @nocollapse */ EntityDefinitionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDefinitionService });
953
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDefinitionService, decorators: [{
954
954
  type: Injectable
955
955
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
956
956
  type: Optional
@@ -1088,9 +1088,9 @@ class EntityCacheDataService {
1088
1088
  return idSelector;
1089
1089
  }
1090
1090
  }
1091
- /** @nocollapse */ EntityCacheDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheDataService, deps: [{ token: EntityDefinitionService }, { token: i1.HttpClient }, { token: DefaultDataServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1092
- /** @nocollapse */ EntityCacheDataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheDataService });
1093
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheDataService, decorators: [{
1091
+ /** @nocollapse */ EntityCacheDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheDataService, deps: [{ token: EntityDefinitionService }, { token: i1.HttpClient }, { token: DefaultDataServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1092
+ /** @nocollapse */ EntityCacheDataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheDataService });
1093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheDataService, decorators: [{
1094
1094
  type: Injectable
1095
1095
  }], ctorParameters: function () { return [{ type: EntityDefinitionService }, { type: i1.HttpClient }, { type: DefaultDataServiceConfig, decorators: [{
1096
1096
  type: Optional
@@ -1150,9 +1150,9 @@ class EntityDataService {
1150
1150
  this.services = { ...this.services, ...services };
1151
1151
  }
1152
1152
  }
1153
- /** @nocollapse */ EntityDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataService, deps: [{ token: DefaultDataServiceFactory }], target: i0.ɵɵFactoryTarget.Injectable });
1154
- /** @nocollapse */ EntityDataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataService });
1155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataService, decorators: [{
1153
+ /** @nocollapse */ EntityDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataService, deps: [{ token: DefaultDataServiceFactory }], target: i0.ɵɵFactoryTarget.Injectable });
1154
+ /** @nocollapse */ EntityDataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataService });
1155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataService, decorators: [{
1156
1156
  type: Injectable
1157
1157
  }], ctorParameters: function () { return [{ type: DefaultDataServiceFactory }]; } });
1158
1158
 
@@ -1193,9 +1193,9 @@ class DefaultPersistenceResultHandler {
1193
1193
  };
1194
1194
  }
1195
1195
  }
1196
- /** @nocollapse */ DefaultPersistenceResultHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultPersistenceResultHandler, deps: [{ token: Logger }, { token: EntityActionFactory }], target: i0.ɵɵFactoryTarget.Injectable });
1197
- /** @nocollapse */ DefaultPersistenceResultHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultPersistenceResultHandler });
1198
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultPersistenceResultHandler, decorators: [{
1196
+ /** @nocollapse */ DefaultPersistenceResultHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultPersistenceResultHandler, deps: [{ token: Logger }, { token: EntityActionFactory }], target: i0.ɵɵFactoryTarget.Injectable });
1197
+ /** @nocollapse */ DefaultPersistenceResultHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultPersistenceResultHandler });
1198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultPersistenceResultHandler, decorators: [{
1199
1199
  type: Injectable
1200
1200
  }], ctorParameters: function () { return [{ type: Logger }, { type: EntityActionFactory }]; } });
1201
1201
 
@@ -1231,9 +1231,9 @@ class CorrelationIdGenerator {
1231
1231
  return this.prefix + this.seed;
1232
1232
  }
1233
1233
  }
1234
- /** @nocollapse */ CorrelationIdGenerator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: CorrelationIdGenerator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1235
- /** @nocollapse */ CorrelationIdGenerator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: CorrelationIdGenerator });
1236
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: CorrelationIdGenerator, decorators: [{
1234
+ /** @nocollapse */ CorrelationIdGenerator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: CorrelationIdGenerator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1235
+ /** @nocollapse */ CorrelationIdGenerator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: CorrelationIdGenerator });
1236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: CorrelationIdGenerator, decorators: [{
1237
1237
  type: Injectable
1238
1238
  }] });
1239
1239
 
@@ -1259,9 +1259,9 @@ class EntityDispatcherDefaultOptions {
1259
1259
  this.optimisticSaveEntities = false;
1260
1260
  }
1261
1261
  }
1262
- /** @nocollapse */ EntityDispatcherDefaultOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDispatcherDefaultOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1263
- /** @nocollapse */ EntityDispatcherDefaultOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDispatcherDefaultOptions });
1264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDispatcherDefaultOptions, decorators: [{
1262
+ /** @nocollapse */ EntityDispatcherDefaultOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDispatcherDefaultOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1263
+ /** @nocollapse */ EntityDispatcherDefaultOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDispatcherDefaultOptions });
1264
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDispatcherDefaultOptions, decorators: [{
1265
1265
  type: Injectable
1266
1266
  }] });
1267
1267
 
@@ -1408,14 +1408,14 @@ class EntityCacheDispatcher {
1408
1408
  }));
1409
1409
  }
1410
1410
  }
1411
- /** @nocollapse */ EntityCacheDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheDispatcher, deps: [{ token: CorrelationIdGenerator }, { token: EntityDispatcherDefaultOptions }, { token: ScannedActionsSubject }, { token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Injectable });
1412
- /** @nocollapse */ EntityCacheDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheDispatcher });
1413
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheDispatcher, decorators: [{
1411
+ /** @nocollapse */ EntityCacheDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheDispatcher, deps: [{ token: CorrelationIdGenerator }, { token: EntityDispatcherDefaultOptions }, { token: ScannedActionsSubject }, { token: i3.Store }], target: i0.ɵɵFactoryTarget.Injectable });
1412
+ /** @nocollapse */ EntityCacheDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheDispatcher });
1413
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheDispatcher, decorators: [{
1414
1414
  type: Injectable
1415
1415
  }], ctorParameters: function () { return [{ type: CorrelationIdGenerator }, { type: EntityDispatcherDefaultOptions }, { type: i4.Observable, decorators: [{
1416
1416
  type: Inject,
1417
1417
  args: [ScannedActionsSubject]
1418
- }] }, { type: i1$1.Store }]; } });
1418
+ }] }, { type: i3.Store }]; } });
1419
1419
 
1420
1420
  /**
1421
1421
  * Dispatches EntityCollection actions to their reducers and effects (default implementation).
@@ -1875,11 +1875,11 @@ class EntityDispatcherFactory {
1875
1875
  this.raSubscription.unsubscribe();
1876
1876
  }
1877
1877
  }
1878
- /** @nocollapse */ EntityDispatcherFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDispatcherFactory, deps: [{ token: EntityActionFactory }, { token: i1$1.Store }, { token: EntityDispatcherDefaultOptions }, { token: ScannedActionsSubject }, { token: ENTITY_CACHE_SELECTOR_TOKEN }, { token: CorrelationIdGenerator }], target: i0.ɵɵFactoryTarget.Injectable });
1879
- /** @nocollapse */ EntityDispatcherFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDispatcherFactory });
1880
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDispatcherFactory, decorators: [{
1878
+ /** @nocollapse */ EntityDispatcherFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDispatcherFactory, deps: [{ token: EntityActionFactory }, { token: i3.Store }, { token: EntityDispatcherDefaultOptions }, { token: ScannedActionsSubject }, { token: ENTITY_CACHE_SELECTOR_TOKEN }, { token: CorrelationIdGenerator }], target: i0.ɵɵFactoryTarget.Injectable });
1879
+ /** @nocollapse */ EntityDispatcherFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDispatcherFactory });
1880
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDispatcherFactory, decorators: [{
1881
1881
  type: Injectable
1882
- }], ctorParameters: function () { return [{ type: EntityActionFactory }, { type: i1$1.Store }, { type: EntityDispatcherDefaultOptions }, { type: i4.Observable, decorators: [{
1882
+ }], ctorParameters: function () { return [{ type: EntityActionFactory }, { type: i3.Store }, { type: EntityDispatcherDefaultOptions }, { type: i4.Observable, decorators: [{
1883
1883
  type: Inject,
1884
1884
  args: [ScannedActionsSubject]
1885
1885
  }] }, { type: undefined, decorators: [{
@@ -1981,11 +1981,11 @@ class EntityCacheEffects {
1981
1981
  };
1982
1982
  }
1983
1983
  }
1984
- /** @nocollapse */ EntityCacheEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheEffects, deps: [{ token: i1$2.Actions }, { token: EntityCacheDataService }, { token: EntityActionFactory }, { token: Logger }, { token: ENTITY_EFFECTS_SCHEDULER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1985
- /** @nocollapse */ EntityCacheEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheEffects });
1986
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheEffects, decorators: [{
1984
+ /** @nocollapse */ EntityCacheEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheEffects, deps: [{ token: i1$1.Actions }, { token: EntityCacheDataService }, { token: EntityActionFactory }, { token: Logger }, { token: ENTITY_EFFECTS_SCHEDULER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1985
+ /** @nocollapse */ EntityCacheEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheEffects });
1986
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheEffects, decorators: [{
1987
1987
  type: Injectable
1988
- }], ctorParameters: function () { return [{ type: i1$2.Actions }, { type: EntityCacheDataService }, { type: EntityActionFactory }, { type: Logger }, { type: undefined, decorators: [{
1988
+ }], ctorParameters: function () { return [{ type: i1$1.Actions }, { type: EntityCacheDataService }, { type: EntityActionFactory }, { type: Logger }, { type: undefined, decorators: [{
1989
1989
  type: Optional
1990
1990
  }, {
1991
1991
  type: Inject,
@@ -2117,11 +2117,11 @@ class EntityEffects {
2117
2117
  return of(successAction).pipe(delay(this.responseDelay, this.scheduler || asyncScheduler));
2118
2118
  }
2119
2119
  }
2120
- /** @nocollapse */ EntityEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityEffects, deps: [{ token: i1$2.Actions }, { token: EntityDataService }, { token: EntityActionFactory }, { token: PersistenceResultHandler }, { token: ENTITY_EFFECTS_SCHEDULER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2121
- /** @nocollapse */ EntityEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityEffects });
2122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityEffects, decorators: [{
2120
+ /** @nocollapse */ EntityEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityEffects, deps: [{ token: i1$1.Actions }, { token: EntityDataService }, { token: EntityActionFactory }, { token: PersistenceResultHandler }, { token: ENTITY_EFFECTS_SCHEDULER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2121
+ /** @nocollapse */ EntityEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityEffects });
2122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityEffects, decorators: [{
2123
2123
  type: Injectable
2124
- }], ctorParameters: function () { return [{ type: i1$2.Actions }, { type: EntityDataService }, { type: EntityActionFactory }, { type: PersistenceResultHandler }, { type: undefined, decorators: [{
2124
+ }], ctorParameters: function () { return [{ type: i1$1.Actions }, { type: EntityDataService }, { type: EntityActionFactory }, { type: PersistenceResultHandler }, { type: undefined, decorators: [{
2125
2125
  type: Optional
2126
2126
  }, {
2127
2127
  type: Inject,
@@ -2426,9 +2426,9 @@ class EntityCollectionCreator {
2426
2426
  return (initialState || createEmptyEntityCollection(entityName));
2427
2427
  }
2428
2428
  }
2429
- /** @nocollapse */ EntityCollectionCreator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionCreator, deps: [{ token: EntityDefinitionService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2430
- /** @nocollapse */ EntityCollectionCreator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionCreator });
2431
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionCreator, decorators: [{
2429
+ /** @nocollapse */ EntityCollectionCreator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionCreator, deps: [{ token: EntityDefinitionService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2430
+ /** @nocollapse */ EntityCollectionCreator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionCreator });
2431
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionCreator, decorators: [{
2432
2432
  type: Injectable
2433
2433
  }], ctorParameters: function () { return [{ type: EntityDefinitionService, decorators: [{
2434
2434
  type: Optional
@@ -2521,9 +2521,9 @@ class EntitySelectorsFactory {
2521
2521
  };
2522
2522
  }
2523
2523
  }
2524
- /** @nocollapse */ EntitySelectorsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntitySelectorsFactory, deps: [{ token: EntityCollectionCreator, optional: true }, { token: ENTITY_CACHE_SELECTOR_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2525
- /** @nocollapse */ EntitySelectorsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntitySelectorsFactory });
2526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntitySelectorsFactory, decorators: [{
2524
+ /** @nocollapse */ EntitySelectorsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntitySelectorsFactory, deps: [{ token: EntityCollectionCreator, optional: true }, { token: ENTITY_CACHE_SELECTOR_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2525
+ /** @nocollapse */ EntitySelectorsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntitySelectorsFactory });
2526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntitySelectorsFactory, decorators: [{
2527
2527
  type: Injectable
2528
2528
  }], ctorParameters: function () { return [{ type: EntityCollectionCreator, decorators: [{
2529
2529
  type: Optional
@@ -2569,11 +2569,11 @@ class EntitySelectors$Factory {
2569
2569
  return selectors$;
2570
2570
  }
2571
2571
  }
2572
- /** @nocollapse */ EntitySelectors$Factory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntitySelectors$Factory, deps: [{ token: i1$1.Store }, { token: i1$2.Actions }, { token: ENTITY_CACHE_SELECTOR_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
2573
- /** @nocollapse */ EntitySelectors$Factory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntitySelectors$Factory });
2574
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntitySelectors$Factory, decorators: [{
2572
+ /** @nocollapse */ EntitySelectors$Factory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntitySelectors$Factory, deps: [{ token: i3.Store }, { token: i1$1.Actions }, { token: ENTITY_CACHE_SELECTOR_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
2573
+ /** @nocollapse */ EntitySelectors$Factory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntitySelectors$Factory });
2574
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntitySelectors$Factory, decorators: [{
2575
2575
  type: Injectable
2576
- }], ctorParameters: function () { return [{ type: i1$1.Store }, { type: i1$2.Actions }, { type: undefined, decorators: [{
2576
+ }], ctorParameters: function () { return [{ type: i3.Store }, { type: i1$1.Actions }, { type: undefined, decorators: [{
2577
2577
  type: Inject,
2578
2578
  args: [ENTITY_CACHE_SELECTOR_TOKEN]
2579
2579
  }] }]; } });
@@ -2604,9 +2604,9 @@ class EntityCollectionServiceElementsFactory {
2604
2604
  };
2605
2605
  }
2606
2606
  }
2607
- /** @nocollapse */ EntityCollectionServiceElementsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionServiceElementsFactory, deps: [{ token: EntityDispatcherFactory }, { token: EntityDefinitionService }, { token: EntitySelectorsFactory }, { token: EntitySelectors$Factory }], target: i0.ɵɵFactoryTarget.Injectable });
2608
- /** @nocollapse */ EntityCollectionServiceElementsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionServiceElementsFactory });
2609
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionServiceElementsFactory, decorators: [{
2607
+ /** @nocollapse */ EntityCollectionServiceElementsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionServiceElementsFactory, deps: [{ token: EntityDispatcherFactory }, { token: EntityDefinitionService }, { token: EntitySelectorsFactory }, { token: EntitySelectors$Factory }], target: i0.ɵɵFactoryTarget.Injectable });
2608
+ /** @nocollapse */ EntityCollectionServiceElementsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionServiceElementsFactory });
2609
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionServiceElementsFactory, decorators: [{
2610
2610
  type: Injectable
2611
2611
  }], ctorParameters: function () { return [{ type: EntityDispatcherFactory }, { type: EntityDefinitionService }, { type: EntitySelectorsFactory }, { type: EntitySelectors$Factory }]; } });
2612
2612
 
@@ -2628,9 +2628,9 @@ class EntityCollectionServiceFactory {
2628
2628
  return new EntityCollectionServiceBase(entityName, this.entityCollectionServiceElementsFactory);
2629
2629
  }
2630
2630
  }
2631
- /** @nocollapse */ EntityCollectionServiceFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionServiceFactory, deps: [{ token: EntityCollectionServiceElementsFactory }], target: i0.ɵɵFactoryTarget.Injectable });
2632
- /** @nocollapse */ EntityCollectionServiceFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionServiceFactory });
2633
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionServiceFactory, decorators: [{
2631
+ /** @nocollapse */ EntityCollectionServiceFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionServiceFactory, deps: [{ token: EntityCollectionServiceElementsFactory }], target: i0.ɵɵFactoryTarget.Injectable });
2632
+ /** @nocollapse */ EntityCollectionServiceFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionServiceFactory });
2633
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionServiceFactory, decorators: [{
2634
2634
  type: Injectable
2635
2635
  }], ctorParameters: function () { return [{ type: EntityCollectionServiceElementsFactory }]; } });
2636
2636
 
@@ -2655,11 +2655,11 @@ class EntityServicesElements {
2655
2655
  this.reducedActions$ = entityDispatcherFactory.reducedActions$;
2656
2656
  }
2657
2657
  }
2658
- /** @nocollapse */ EntityServicesElements.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityServicesElements, deps: [{ token: EntityCollectionServiceFactory }, { token: EntityDispatcherFactory }, { token: EntitySelectors$Factory }, { token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Injectable });
2659
- /** @nocollapse */ EntityServicesElements.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityServicesElements });
2660
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityServicesElements, decorators: [{
2658
+ /** @nocollapse */ EntityServicesElements.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityServicesElements, deps: [{ token: EntityCollectionServiceFactory }, { token: EntityDispatcherFactory }, { token: EntitySelectors$Factory }, { token: i3.Store }], target: i0.ɵɵFactoryTarget.Injectable });
2659
+ /** @nocollapse */ EntityServicesElements.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityServicesElements });
2660
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityServicesElements, decorators: [{
2661
2661
  type: Injectable
2662
- }], ctorParameters: function () { return [{ type: EntityCollectionServiceFactory }, { type: EntityDispatcherFactory }, { type: EntitySelectors$Factory }, { type: i1$1.Store }]; } });
2662
+ }], ctorParameters: function () { return [{ type: EntityCollectionServiceFactory }, { type: EntityDispatcherFactory }, { type: EntitySelectors$Factory }, { type: i3.Store }]; } });
2663
2663
 
2664
2664
  /* eslint-disable @typescript-eslint/member-ordering */
2665
2665
  /**
@@ -2771,9 +2771,9 @@ class EntityServicesBase {
2771
2771
  }
2772
2772
  }
2773
2773
  }
2774
- /** @nocollapse */ EntityServicesBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityServicesBase, deps: [{ token: EntityServicesElements }], target: i0.ɵɵFactoryTarget.Injectable });
2775
- /** @nocollapse */ EntityServicesBase.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityServicesBase });
2776
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityServicesBase, decorators: [{
2774
+ /** @nocollapse */ EntityServicesBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityServicesBase, deps: [{ token: EntityServicesElements }], target: i0.ɵɵFactoryTarget.Injectable });
2775
+ /** @nocollapse */ EntityServicesBase.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityServicesBase });
2776
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityServicesBase, decorators: [{
2777
2777
  type: Injectable
2778
2778
  }], ctorParameters: function () { return [{ type: EntityServicesElements }]; } });
2779
2779
 
@@ -4177,9 +4177,9 @@ class EntityCollectionReducerMethodsFactory {
4177
4177
  return methodsClass.methods;
4178
4178
  }
4179
4179
  }
4180
- /** @nocollapse */ EntityCollectionReducerMethodsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerMethodsFactory, deps: [{ token: EntityDefinitionService }], target: i0.ɵɵFactoryTarget.Injectable });
4181
- /** @nocollapse */ EntityCollectionReducerMethodsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerMethodsFactory });
4182
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerMethodsFactory, decorators: [{
4180
+ /** @nocollapse */ EntityCollectionReducerMethodsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerMethodsFactory, deps: [{ token: EntityDefinitionService }], target: i0.ɵɵFactoryTarget.Injectable });
4181
+ /** @nocollapse */ EntityCollectionReducerMethodsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerMethodsFactory });
4182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerMethodsFactory, decorators: [{
4183
4183
  type: Injectable
4184
4184
  }], ctorParameters: function () { return [{ type: EntityDefinitionService }]; } });
4185
4185
 
@@ -4198,9 +4198,9 @@ class EntityCollectionReducerFactory {
4198
4198
  };
4199
4199
  }
4200
4200
  }
4201
- /** @nocollapse */ EntityCollectionReducerFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerFactory, deps: [{ token: EntityCollectionReducerMethodsFactory }], target: i0.ɵɵFactoryTarget.Injectable });
4202
- /** @nocollapse */ EntityCollectionReducerFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerFactory });
4203
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerFactory, decorators: [{
4201
+ /** @nocollapse */ EntityCollectionReducerFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerFactory, deps: [{ token: EntityCollectionReducerMethodsFactory }], target: i0.ɵɵFactoryTarget.Injectable });
4202
+ /** @nocollapse */ EntityCollectionReducerFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerFactory });
4203
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerFactory, decorators: [{
4204
4204
  type: Injectable
4205
4205
  }], ctorParameters: function () { return [{ type: EntityCollectionReducerMethodsFactory }]; } });
4206
4206
 
@@ -4256,9 +4256,9 @@ class EntityCollectionReducerRegistry {
4256
4256
  keys.forEach((key) => this.registerReducer(key, reducers[key]));
4257
4257
  }
4258
4258
  }
4259
- /** @nocollapse */ EntityCollectionReducerRegistry.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerRegistry, deps: [{ token: EntityCollectionReducerFactory }, { token: ENTITY_COLLECTION_META_REDUCERS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
4260
- /** @nocollapse */ EntityCollectionReducerRegistry.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerRegistry });
4261
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCollectionReducerRegistry, decorators: [{
4259
+ /** @nocollapse */ EntityCollectionReducerRegistry.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerRegistry, deps: [{ token: EntityCollectionReducerFactory }, { token: ENTITY_COLLECTION_META_REDUCERS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
4260
+ /** @nocollapse */ EntityCollectionReducerRegistry.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerRegistry });
4261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCollectionReducerRegistry, decorators: [{
4262
4262
  type: Injectable
4263
4263
  }], ctorParameters: function () { return [{ type: EntityCollectionReducerFactory }, { type: undefined, decorators: [{
4264
4264
  type: Optional
@@ -4523,9 +4523,9 @@ class EntityCacheReducerFactory {
4523
4523
  return entityCache;
4524
4524
  }
4525
4525
  }
4526
- /** @nocollapse */ EntityCacheReducerFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheReducerFactory, deps: [{ token: EntityCollectionCreator }, { token: EntityCollectionReducerRegistry }, { token: Logger }], target: i0.ɵɵFactoryTarget.Injectable });
4527
- /** @nocollapse */ EntityCacheReducerFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheReducerFactory });
4528
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityCacheReducerFactory, decorators: [{
4526
+ /** @nocollapse */ EntityCacheReducerFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheReducerFactory, deps: [{ token: EntityCollectionCreator }, { token: EntityCollectionReducerRegistry }, { token: Logger }], target: i0.ɵɵFactoryTarget.Injectable });
4527
+ /** @nocollapse */ EntityCacheReducerFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheReducerFactory });
4528
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityCacheReducerFactory, decorators: [{
4529
4529
  type: Injectable
4530
4530
  }], ctorParameters: function () { return [{ type: EntityCollectionCreator }, { type: EntityCollectionReducerRegistry }, { type: Logger }]; } });
4531
4531
 
@@ -4546,9 +4546,9 @@ class DefaultLogger {
4546
4546
  }
4547
4547
  }
4548
4548
  }
4549
- /** @nocollapse */ DefaultLogger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultLogger, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4550
- /** @nocollapse */ DefaultLogger.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultLogger });
4551
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultLogger, decorators: [{
4549
+ /** @nocollapse */ DefaultLogger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultLogger, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4550
+ /** @nocollapse */ DefaultLogger.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultLogger });
4551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultLogger, decorators: [{
4552
4552
  type: Injectable
4553
4553
  }] });
4554
4554
 
@@ -4609,9 +4609,9 @@ class DefaultPluralizer {
4609
4609
  this.pluralNames = { ...this.pluralNames, ...(pluralNames || {}) };
4610
4610
  }
4611
4611
  }
4612
- /** @nocollapse */ DefaultPluralizer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultPluralizer, deps: [{ token: PLURAL_NAMES_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
4613
- /** @nocollapse */ DefaultPluralizer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultPluralizer });
4614
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: DefaultPluralizer, decorators: [{
4612
+ /** @nocollapse */ DefaultPluralizer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultPluralizer, deps: [{ token: PLURAL_NAMES_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
4613
+ /** @nocollapse */ DefaultPluralizer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultPluralizer });
4614
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DefaultPluralizer, decorators: [{
4615
4615
  type: Injectable
4616
4616
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
4617
4617
  type: Optional
@@ -4689,6 +4689,194 @@ function guidComparer(l, r) {
4689
4689
  : +(l !== r);
4690
4690
  }
4691
4691
 
4692
+ const BASE_ENTITY_DATA_PROVIDERS = [
4693
+ CorrelationIdGenerator,
4694
+ EntityDispatcherDefaultOptions,
4695
+ EntityActionFactory,
4696
+ EntityCacheDispatcher,
4697
+ EntityCacheReducerFactory,
4698
+ entityCacheSelectorProvider,
4699
+ EntityCollectionCreator,
4700
+ EntityCollectionReducerFactory,
4701
+ EntityCollectionReducerMethodsFactory,
4702
+ EntityCollectionReducerRegistry,
4703
+ EntityCollectionServiceElementsFactory,
4704
+ EntityCollectionServiceFactory,
4705
+ EntityDefinitionService,
4706
+ EntityDispatcherFactory,
4707
+ EntitySelectorsFactory,
4708
+ EntitySelectors$Factory,
4709
+ EntityServicesElements,
4710
+ { provide: ENTITY_CACHE_NAME_TOKEN, useValue: ENTITY_CACHE_NAME },
4711
+ { provide: EntityServices, useClass: EntityServicesBase },
4712
+ { provide: Logger, useClass: DefaultLogger },
4713
+ {
4714
+ provide: ENVIRONMENT_INITIALIZER,
4715
+ multi: true,
4716
+ useValue: () => initializeBaseEntityData(),
4717
+ },
4718
+ ];
4719
+ function initializeBaseEntityData() {
4720
+ const reducerManager = inject(ReducerManager);
4721
+ const entityCacheReducerFactory = inject(EntityCacheReducerFactory);
4722
+ const entityCacheName = inject(ENTITY_CACHE_NAME_TOKEN, {
4723
+ optional: true,
4724
+ });
4725
+ const initialStateOrFn = inject(INITIAL_ENTITY_CACHE_STATE, {
4726
+ optional: true,
4727
+ });
4728
+ const metaReducersOrTokens = inject(ENTITY_CACHE_META_REDUCERS, {
4729
+ optional: true,
4730
+ });
4731
+ // Add the @ngrx/data feature to the Store's features
4732
+ const key = entityCacheName || ENTITY_CACHE_NAME;
4733
+ const metaReducers = (metaReducersOrTokens || []).map((mr) => {
4734
+ return mr instanceof InjectionToken ? inject(mr) : mr;
4735
+ });
4736
+ const initialState = typeof initialStateOrFn === 'function'
4737
+ ? initialStateOrFn()
4738
+ : initialStateOrFn;
4739
+ const entityCacheFeature = {
4740
+ key,
4741
+ reducers: entityCacheReducerFactory.create(),
4742
+ reducerFactory: combineReducers,
4743
+ initialState: initialState || {},
4744
+ metaReducers: metaReducers,
4745
+ };
4746
+ reducerManager.addFeature(entityCacheFeature);
4747
+ }
4748
+ const ENTITY_DATA_EFFECTS_PROVIDERS = [
4749
+ DefaultDataServiceFactory,
4750
+ EntityCacheDataService,
4751
+ EntityDataService,
4752
+ EntityCacheEffects,
4753
+ EntityEffects,
4754
+ { provide: HttpUrlGenerator, useClass: DefaultHttpUrlGenerator },
4755
+ {
4756
+ provide: PersistenceResultHandler,
4757
+ useClass: DefaultPersistenceResultHandler,
4758
+ },
4759
+ { provide: Pluralizer, useClass: DefaultPluralizer },
4760
+ {
4761
+ provide: ENVIRONMENT_INITIALIZER,
4762
+ multi: true,
4763
+ useValue: () => initializeEntityDataEffects(),
4764
+ },
4765
+ ];
4766
+ function initializeEntityDataEffects() {
4767
+ const effectsSources = inject(EffectSources);
4768
+ const entityCacheEffects = inject(EntityCacheEffects);
4769
+ const entityEffects = inject(EntityEffects);
4770
+ effectsSources.addEffects(entityCacheEffects);
4771
+ effectsSources.addEffects(entityEffects);
4772
+ }
4773
+ function provideEntityDataConfig(config) {
4774
+ return [
4775
+ {
4776
+ provide: ENTITY_CACHE_META_REDUCERS,
4777
+ useValue: config.entityCacheMetaReducers
4778
+ ? config.entityCacheMetaReducers
4779
+ : [],
4780
+ },
4781
+ {
4782
+ provide: ENTITY_COLLECTION_META_REDUCERS,
4783
+ useValue: config.entityCollectionMetaReducers
4784
+ ? config.entityCollectionMetaReducers
4785
+ : [],
4786
+ },
4787
+ {
4788
+ provide: PLURAL_NAMES_TOKEN,
4789
+ multi: true,
4790
+ useValue: config.pluralNames ? config.pluralNames : {},
4791
+ },
4792
+ {
4793
+ provide: ENTITY_METADATA_TOKEN,
4794
+ multi: true,
4795
+ useValue: config.entityMetadata ? config.entityMetadata : [],
4796
+ },
4797
+ ];
4798
+ }
4799
+ /**
4800
+ * Sets up base entity data providers with entity config.
4801
+ * This function should to be used at the root level.
4802
+ *
4803
+ * @usageNotes
4804
+ *
4805
+ * ### Providing entity data with effects
4806
+ *
4807
+ * When used with `withEffects` feature, the `provideEntityData` function is
4808
+ * an alternative to `EntityDataModule.forRoot`
4809
+ *
4810
+ * ```ts
4811
+ * import { provideStore } from '@ngrx/store';
4812
+ * import { provideEffects } from '@ngrx/effects';
4813
+ * import {
4814
+ * EntityMetadataMap,
4815
+ * provideEntityData,
4816
+ * withEffects,
4817
+ * } from '@ngrx/data';
4818
+ *
4819
+ * const entityMetadata: EntityMetadataMap = {
4820
+ * Hero: {},
4821
+ * Villain: {},
4822
+ * };
4823
+ * const pluralNames = { Hero: 'Heroes' };
4824
+ *
4825
+ * bootstrapApplication(AppComponent, {
4826
+ * providers: [
4827
+ * provideStore(),
4828
+ * provideEffects(),
4829
+ * provideEntityData({ entityMetadata, pluralNames }, withEffects()),
4830
+ * ],
4831
+ * });
4832
+ * ```
4833
+ *
4834
+ * ### Providing entity data without effects
4835
+ *
4836
+ * When used without `withEffects` feature, the `provideEntityData` function is
4837
+ * an alternative to `EntityDataModuleWithoutEffects.forRoot`.
4838
+ *
4839
+ * ```ts
4840
+ * import { provideStore } from '@ngrx/store';
4841
+ * import { EntityMetadataMap, provideEntityData } from '@ngrx/data';
4842
+ *
4843
+ * const entityMetadata: EntityMetadataMap = {
4844
+ * Musician: {},
4845
+ * Song: {},
4846
+ * };
4847
+ *
4848
+ * bootstrapApplication(AppComponent, {
4849
+ * providers: [
4850
+ * provideStore(),
4851
+ * provideEntityData({ entityMetadata }),
4852
+ * ],
4853
+ * });
4854
+ * ```
4855
+ *
4856
+ */
4857
+ function provideEntityData(config, ...features) {
4858
+ return makeEnvironmentProviders([
4859
+ BASE_ENTITY_DATA_PROVIDERS,
4860
+ provideEntityDataConfig(config),
4861
+ ...features.map((feature) => feature.ɵproviders),
4862
+ ]);
4863
+ }
4864
+ var EntityDataFeatureKind;
4865
+ (function (EntityDataFeatureKind) {
4866
+ EntityDataFeatureKind[EntityDataFeatureKind["WithEffects"] = 0] = "WithEffects";
4867
+ })(EntityDataFeatureKind || (EntityDataFeatureKind = {}));
4868
+ /**
4869
+ * Registers entity data effects and provides HTTP data services.
4870
+ *
4871
+ * @see `provideEntityData`
4872
+ */
4873
+ function withEffects() {
4874
+ return {
4875
+ ɵkind: EntityDataFeatureKind.WithEffects,
4876
+ ɵproviders: [ENTITY_DATA_EFFECTS_PROVIDERS],
4877
+ };
4878
+ }
4879
+
4692
4880
  /**
4693
4881
  * Module without effects or dataservices which means no HTTP calls
4694
4882
  * This module helpful for internal testing.
@@ -4696,129 +4884,22 @@ function guidComparer(l, r) {
4696
4884
  * therefore opt-out of @ngrx/effects for entities
4697
4885
  */
4698
4886
  class EntityDataModuleWithoutEffects {
4699
- constructor(reducerManager, entityCacheReducerFactory, injector,
4700
- // optional params
4701
- entityCacheName, initialState, metaReducers) {
4702
- this.reducerManager = reducerManager;
4703
- this.injector = injector;
4704
- this.entityCacheName = entityCacheName;
4705
- this.initialState = initialState;
4706
- this.metaReducers = metaReducers;
4707
- // Add the @ngrx/data feature to the Store's features
4708
- // as Store.forFeature does for StoreFeatureModule
4709
- const key = entityCacheName || ENTITY_CACHE_NAME;
4710
- initialState =
4711
- typeof initialState === 'function' ? initialState() : initialState;
4712
- const reducers = (metaReducers || []).map((mr) => {
4713
- return mr instanceof InjectionToken ? injector.get(mr) : mr;
4714
- });
4715
- this.entityCacheFeature = {
4716
- key,
4717
- reducers: entityCacheReducerFactory.create(),
4718
- reducerFactory: combineReducers,
4719
- initialState: initialState || {},
4720
- metaReducers: reducers,
4721
- };
4722
- reducerManager.addFeature(this.entityCacheFeature);
4723
- }
4724
4887
  static forRoot(config) {
4725
4888
  return {
4726
4889
  ngModule: EntityDataModuleWithoutEffects,
4727
- providers: [
4728
- {
4729
- provide: ENTITY_CACHE_META_REDUCERS,
4730
- useValue: config.entityCacheMetaReducers
4731
- ? config.entityCacheMetaReducers
4732
- : [],
4733
- },
4734
- {
4735
- provide: ENTITY_COLLECTION_META_REDUCERS,
4736
- useValue: config.entityCollectionMetaReducers
4737
- ? config.entityCollectionMetaReducers
4738
- : [],
4739
- },
4740
- {
4741
- provide: PLURAL_NAMES_TOKEN,
4742
- multi: true,
4743
- useValue: config.pluralNames ? config.pluralNames : {},
4744
- },
4745
- ],
4890
+ providers: [provideEntityDataConfig(config)],
4746
4891
  };
4747
4892
  }
4748
- // eslint-disable-next-line @angular-eslint/contextual-lifecycle
4749
- ngOnDestroy() {
4750
- this.reducerManager.removeFeature(this.entityCacheFeature);
4751
- }
4752
4893
  }
4753
- /** @nocollapse */ EntityDataModuleWithoutEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModuleWithoutEffects, deps: [{ token: i1$1.ReducerManager }, { token: EntityCacheReducerFactory }, { token: i0.Injector }, { token: ENTITY_CACHE_NAME_TOKEN, optional: true }, { token: INITIAL_ENTITY_CACHE_STATE, optional: true }, { token: ENTITY_CACHE_META_REDUCERS, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
4754
- /** @nocollapse */ EntityDataModuleWithoutEffects.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModuleWithoutEffects, imports: [StoreModule] });
4755
- /** @nocollapse */ EntityDataModuleWithoutEffects.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModuleWithoutEffects, providers: [
4756
- CorrelationIdGenerator,
4757
- EntityDispatcherDefaultOptions,
4758
- EntityActionFactory,
4759
- EntityCacheDispatcher,
4760
- EntityCacheReducerFactory,
4761
- entityCacheSelectorProvider,
4762
- EntityCollectionCreator,
4763
- EntityCollectionReducerFactory,
4764
- EntityCollectionReducerMethodsFactory,
4765
- EntityCollectionReducerRegistry,
4766
- EntityCollectionServiceElementsFactory,
4767
- EntityCollectionServiceFactory,
4768
- EntityDefinitionService,
4769
- EntityDispatcherFactory,
4770
- EntitySelectorsFactory,
4771
- EntitySelectors$Factory,
4772
- EntityServicesElements,
4773
- { provide: ENTITY_CACHE_NAME_TOKEN, useValue: ENTITY_CACHE_NAME },
4774
- { provide: EntityServices, useClass: EntityServicesBase },
4775
- { provide: Logger, useClass: DefaultLogger },
4776
- ], imports: [StoreModule] });
4777
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModuleWithoutEffects, decorators: [{
4894
+ /** @nocollapse */ EntityDataModuleWithoutEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModuleWithoutEffects, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4895
+ /** @nocollapse */ EntityDataModuleWithoutEffects.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModuleWithoutEffects });
4896
+ /** @nocollapse */ EntityDataModuleWithoutEffects.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModuleWithoutEffects, providers: [BASE_ENTITY_DATA_PROVIDERS] });
4897
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModuleWithoutEffects, decorators: [{
4778
4898
  type: NgModule,
4779
4899
  args: [{
4780
- imports: [
4781
- StoreModule, // rely on Store feature providers rather than Store.forFeature()
4782
- ],
4783
- providers: [
4784
- CorrelationIdGenerator,
4785
- EntityDispatcherDefaultOptions,
4786
- EntityActionFactory,
4787
- EntityCacheDispatcher,
4788
- EntityCacheReducerFactory,
4789
- entityCacheSelectorProvider,
4790
- EntityCollectionCreator,
4791
- EntityCollectionReducerFactory,
4792
- EntityCollectionReducerMethodsFactory,
4793
- EntityCollectionReducerRegistry,
4794
- EntityCollectionServiceElementsFactory,
4795
- EntityCollectionServiceFactory,
4796
- EntityDefinitionService,
4797
- EntityDispatcherFactory,
4798
- EntitySelectorsFactory,
4799
- EntitySelectors$Factory,
4800
- EntityServicesElements,
4801
- { provide: ENTITY_CACHE_NAME_TOKEN, useValue: ENTITY_CACHE_NAME },
4802
- { provide: EntityServices, useClass: EntityServicesBase },
4803
- { provide: Logger, useClass: DefaultLogger },
4804
- ],
4900
+ providers: [BASE_ENTITY_DATA_PROVIDERS],
4805
4901
  }]
4806
- }], ctorParameters: function () { return [{ type: i1$1.ReducerManager }, { type: EntityCacheReducerFactory }, { type: i0.Injector }, { type: undefined, decorators: [{
4807
- type: Optional
4808
- }, {
4809
- type: Inject,
4810
- args: [ENTITY_CACHE_NAME_TOKEN]
4811
- }] }, { type: undefined, decorators: [{
4812
- type: Optional
4813
- }, {
4814
- type: Inject,
4815
- args: [INITIAL_ENTITY_CACHE_STATE]
4816
- }] }, { type: undefined, decorators: [{
4817
- type: Optional
4818
- }, {
4819
- type: Inject,
4820
- args: [ENTITY_CACHE_META_REDUCERS]
4821
- }] }]; } });
4902
+ }] });
4822
4903
 
4823
4904
  /**
4824
4905
  * entity-data main module includes effects and HTTP data services
@@ -4826,100 +4907,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
4826
4907
  * No `forFeature` yet.
4827
4908
  */
4828
4909
  class EntityDataModule {
4829
- constructor(effectSources, entityCacheEffects, entityEffects) {
4830
- this.effectSources = effectSources;
4831
- // We can't use `forFeature()` because, if we did, the developer could not
4832
- // replace the entity-data `EntityEffects` with a custom alternative.
4833
- // Replacing that class is an extensibility point we need.
4834
- //
4835
- // The FEATURE_EFFECTS token is not exposed, so can't use that technique.
4836
- // Warning: this alternative approach relies on an undocumented API
4837
- // to add effect directly rather than through `forFeature()`.
4838
- // The danger is that EffectsModule.forFeature evolves and we no longer perform a crucial step.
4839
- this.addEffects(entityCacheEffects);
4840
- this.addEffects(entityEffects);
4841
- }
4842
4910
  static forRoot(config) {
4843
4911
  return {
4844
4912
  ngModule: EntityDataModule,
4845
- providers: [
4846
- // TODO: Moved these effects classes up to EntityDataModule itself
4847
- // Remove this comment if that was a mistake.
4848
- // EntityCacheEffects,
4849
- // EntityEffects,
4850
- {
4851
- provide: ENTITY_METADATA_TOKEN,
4852
- multi: true,
4853
- useValue: config.entityMetadata ? config.entityMetadata : [],
4854
- },
4855
- {
4856
- provide: ENTITY_CACHE_META_REDUCERS,
4857
- useValue: config.entityCacheMetaReducers
4858
- ? config.entityCacheMetaReducers
4859
- : [],
4860
- },
4861
- {
4862
- provide: ENTITY_COLLECTION_META_REDUCERS,
4863
- useValue: config.entityCollectionMetaReducers
4864
- ? config.entityCollectionMetaReducers
4865
- : [],
4866
- },
4867
- {
4868
- provide: PLURAL_NAMES_TOKEN,
4869
- multi: true,
4870
- useValue: config.pluralNames ? config.pluralNames : {},
4871
- },
4872
- ],
4913
+ providers: [provideEntityDataConfig(config)],
4873
4914
  };
4874
4915
  }
4875
- /**
4876
- * Add another class instance that contains effects.
4877
- * @param effectSourceInstance a class instance that implements effects.
4878
- * Warning: undocumented @ngrx/effects API
4879
- */
4880
- addEffects(effectSourceInstance) {
4881
- this.effectSources.addEffects(effectSourceInstance);
4882
- }
4883
4916
  }
4884
- /** @nocollapse */ EntityDataModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModule, deps: [{ token: i1$2.EffectSources }, { token: EntityCacheEffects }, { token: EntityEffects }], target: i0.ɵɵFactoryTarget.NgModule });
4885
- /** @nocollapse */ EntityDataModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModule, imports: [EntityDataModuleWithoutEffects,
4886
- EffectsModule] });
4887
- /** @nocollapse */ EntityDataModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModule, providers: [
4888
- DefaultDataServiceFactory,
4889
- EntityCacheDataService,
4890
- EntityDataService,
4891
- EntityCacheEffects,
4892
- EntityEffects,
4893
- { provide: HttpUrlGenerator, useClass: DefaultHttpUrlGenerator },
4894
- {
4895
- provide: PersistenceResultHandler,
4896
- useClass: DefaultPersistenceResultHandler,
4897
- },
4898
- { provide: Pluralizer, useClass: DefaultPluralizer },
4899
- ], imports: [EntityDataModuleWithoutEffects,
4900
- EffectsModule] });
4901
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: EntityDataModule, decorators: [{
4917
+ /** @nocollapse */ EntityDataModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4918
+ /** @nocollapse */ EntityDataModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModule, imports: [EntityDataModuleWithoutEffects] });
4919
+ /** @nocollapse */ EntityDataModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModule, providers: [ENTITY_DATA_EFFECTS_PROVIDERS], imports: [EntityDataModuleWithoutEffects] });
4920
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EntityDataModule, decorators: [{
4902
4921
  type: NgModule,
4903
4922
  args: [{
4904
- imports: [
4905
- EntityDataModuleWithoutEffects,
4906
- EffectsModule, // do not supply effects because can't replace later
4907
- ],
4908
- providers: [
4909
- DefaultDataServiceFactory,
4910
- EntityCacheDataService,
4911
- EntityDataService,
4912
- EntityCacheEffects,
4913
- EntityEffects,
4914
- { provide: HttpUrlGenerator, useClass: DefaultHttpUrlGenerator },
4915
- {
4916
- provide: PersistenceResultHandler,
4917
- useClass: DefaultPersistenceResultHandler,
4918
- },
4919
- { provide: Pluralizer, useClass: DefaultPluralizer },
4920
- ],
4923
+ imports: [EntityDataModuleWithoutEffects],
4924
+ providers: [ENTITY_DATA_EFFECTS_PROVIDERS],
4921
4925
  }]
4922
- }], ctorParameters: function () { return [{ type: i1$2.EffectSources }, { type: EntityCacheEffects }, { type: EntityEffects }]; } });
4926
+ }] });
4923
4927
 
4924
4928
  // actions
4925
4929
 
@@ -4933,5 +4937,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
4933
4937
  * Generated bundle index. Do not edit.
4934
4938
  */
4935
4939
 
4936
- export { ChangeSetItemFactory, ChangeSetOperation, ChangeType, ClearCollections, CorrelationIdGenerator, DataServiceError, DefaultDataService, DefaultDataServiceConfig, DefaultDataServiceFactory, DefaultHttpUrlGenerator, DefaultLogger, DefaultPersistenceResultHandler, DefaultPluralizer, ENTITY_CACHE_META_REDUCERS, ENTITY_CACHE_NAME, ENTITY_CACHE_NAME_TOKEN, ENTITY_CACHE_SELECTOR_TOKEN, ENTITY_COLLECTION_META_REDUCERS, ENTITY_METADATA_TOKEN, EntityActionFactory, EntityActionGuard, EntityCacheAction, EntityCacheDataService, EntityCacheDispatcher, EntityCacheEffects, EntityCacheReducerFactory, EntityChangeTrackerBase, EntityCollectionCreator, EntityCollectionReducerFactory, EntityCollectionReducerMethods, EntityCollectionReducerMethodsFactory, EntityCollectionReducerRegistry, EntityCollectionServiceBase, EntityCollectionServiceElementsFactory, EntityCollectionServiceFactory, EntityDataModule, EntityDataModuleWithoutEffects, EntityDataService, EntityDefinitionService, EntityDispatcherBase, EntityDispatcherDefaultOptions, EntityDispatcherFactory, EntityEffects, EntityHttpResourceUrls, EntityOp, EntitySelectors$Factory, EntitySelectorsFactory, EntityServices, EntityServicesBase, EntityServicesElements, HttpUrlGenerator, INITIAL_ENTITY_CACHE_STATE, LoadCollections, Logger, MergeQuerySet, MergeStrategy, OP_ERROR, OP_SUCCESS, PLURAL_NAMES_TOKEN, PersistanceCanceled, PersistenceResultHandler, Pluralizer, PropsFilterFnFactory, SaveEntities, SaveEntitiesCancel, SaveEntitiesCanceled, SaveEntitiesError, SaveEntitiesSuccess, SetEntityCache, changeSetItemFactory, createEmptyEntityCollection, createEntityCacheSelector, createEntityDefinition, defaultSelectId, entityCacheSelectorProvider, excludeEmptyChangeSetItems, flattenArgs, getGuid, getGuidComb, guidComparer, makeErrorOp, makeSuccessOp, normalizeRoot, ofEntityOp, ofEntityType, persistOps, toUpdateFactory };
4940
+ export { ChangeSetItemFactory, ChangeSetOperation, ChangeType, ClearCollections, CorrelationIdGenerator, DataServiceError, DefaultDataService, DefaultDataServiceConfig, DefaultDataServiceFactory, DefaultHttpUrlGenerator, DefaultLogger, DefaultPersistenceResultHandler, DefaultPluralizer, ENTITY_CACHE_META_REDUCERS, ENTITY_CACHE_NAME, ENTITY_CACHE_NAME_TOKEN, ENTITY_CACHE_SELECTOR_TOKEN, ENTITY_COLLECTION_META_REDUCERS, ENTITY_METADATA_TOKEN, EntityActionFactory, EntityActionGuard, EntityCacheAction, EntityCacheDataService, EntityCacheDispatcher, EntityCacheEffects, EntityCacheReducerFactory, EntityChangeTrackerBase, EntityCollectionCreator, EntityCollectionReducerFactory, EntityCollectionReducerMethods, EntityCollectionReducerMethodsFactory, EntityCollectionReducerRegistry, EntityCollectionServiceBase, EntityCollectionServiceElementsFactory, EntityCollectionServiceFactory, EntityDataModule, EntityDataModuleWithoutEffects, EntityDataService, EntityDefinitionService, EntityDispatcherBase, EntityDispatcherDefaultOptions, EntityDispatcherFactory, EntityEffects, EntityHttpResourceUrls, EntityOp, EntitySelectors$Factory, EntitySelectorsFactory, EntityServices, EntityServicesBase, EntityServicesElements, HttpUrlGenerator, INITIAL_ENTITY_CACHE_STATE, LoadCollections, Logger, MergeQuerySet, MergeStrategy, OP_ERROR, OP_SUCCESS, PLURAL_NAMES_TOKEN, PersistanceCanceled, PersistenceResultHandler, Pluralizer, PropsFilterFnFactory, SaveEntities, SaveEntitiesCancel, SaveEntitiesCanceled, SaveEntitiesError, SaveEntitiesSuccess, SetEntityCache, changeSetItemFactory, createEmptyEntityCollection, createEntityCacheSelector, createEntityDefinition, defaultSelectId, entityCacheSelectorProvider, excludeEmptyChangeSetItems, flattenArgs, getGuid, getGuidComb, guidComparer, makeErrorOp, makeSuccessOp, normalizeRoot, ofEntityOp, ofEntityType, persistOps, provideEntityData, toUpdateFactory, withEffects };
4937
4941
  //# sourceMappingURL=ngrx-data.mjs.map