@daffodil/category 0.78.0 → 0.80.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/driver/interfaces/category-service.interface.d.ts +1 -2
  2. package/driver/magento/interfaces/config.interface.d.ts +1 -6
  3. package/driver/public_api.d.ts +1 -1
  4. package/esm2022/driver/in-memory/drivers/category-driver.module.mjs +3 -6
  5. package/esm2022/driver/interfaces/category-service.interface.mjs +7 -3
  6. package/esm2022/driver/magento/category-driver.module.mjs +8 -31
  7. package/esm2022/driver/magento/interfaces/config.interface.mjs +8 -3
  8. package/esm2022/driver/public_api.mjs +2 -2
  9. package/esm2022/driver/testing/drivers/category-driver.module.mjs +3 -6
  10. package/esm2022/routing/injection-tokens/public_api.mjs +2 -2
  11. package/esm2022/routing/injection-tokens/request/builder.token.mjs +8 -3
  12. package/esm2022/routing/injection-tokens/request/builders.token.mjs +6 -11
  13. package/esm2022/routing/resolvers/category-page/category-page.resolver.mjs +2 -2
  14. package/esm2022/state/actions/category-page-filter.actions.mjs +2 -2
  15. package/esm2022/state/category-state.module.mjs +4 -4
  16. package/esm2022/state/effects/category-page-metadata.effects.mjs +55 -0
  17. package/esm2022/state/effects/category-page.effects.mjs +8 -38
  18. package/esm2022/state/injection-tokens/error-matcher.token.mjs +8 -3
  19. package/esm2022/state/injection-tokens/public_api.mjs +2 -2
  20. package/esm2022/state/reducers/token/extra.token.mjs +5 -13
  21. package/esm2022/state/reducers/token/reducers.token.mjs +9 -3
  22. package/fesm2022/daffodil-category-driver-in-memory.mjs +2 -5
  23. package/fesm2022/daffodil-category-driver-in-memory.mjs.map +1 -1
  24. package/fesm2022/daffodil-category-driver-magento.mjs +14 -32
  25. package/fesm2022/daffodil-category-driver-magento.mjs.map +1 -1
  26. package/fesm2022/daffodil-category-driver-testing.mjs +2 -5
  27. package/fesm2022/daffodil-category-driver-testing.mjs.map +1 -1
  28. package/fesm2022/daffodil-category-driver.mjs +7 -3
  29. package/fesm2022/daffodil-category-driver.mjs.map +1 -1
  30. package/fesm2022/daffodil-category-routing.mjs +14 -13
  31. package/fesm2022/daffodil-category-routing.mjs.map +1 -1
  32. package/fesm2022/daffodil-category-state.mjs +32 -54
  33. package/fesm2022/daffodil-category-state.mjs.map +1 -1
  34. package/package.json +1 -1
  35. package/routing/injection-tokens/public_api.d.ts +1 -1
  36. package/routing/injection-tokens/request/builder.token.d.ts +1 -5
  37. package/routing/injection-tokens/request/builders.token.d.ts +1 -23
  38. package/routing/resolvers/category-page/category-page.resolver.d.ts +1 -1
  39. package/state/actions/category-page-filter.actions.d.ts +1 -1
  40. package/state/effects/{category-page-filter.effects.d.ts → category-page-metadata.effects.d.ts} +4 -4
  41. package/state/effects/category-page.effects.d.ts +1 -8
  42. package/state/injection-tokens/error-matcher.token.d.ts +1 -6
  43. package/state/injection-tokens/public_api.d.ts +1 -1
  44. package/state/reducers/token/extra.token.d.ts +1 -20
  45. package/state/reducers/token/reducers.token.d.ts +1 -8
  46. package/esm2022/state/effects/category-page-filter.effects.mjs +0 -55
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-category-driver-testing.mjs","sources":["../../../libs/category/driver/testing/src/drivers/category.service.ts","../../../libs/category/driver/testing/src/drivers/category-driver.module.ts","../../../libs/category/driver/testing/src/daffodil-category-driver-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { DaffProductFactory } from '@daffodil/product/testing';\n\n/**\n * The category testing driver to mock {@link DaffCategoryServiceInterface}.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffTestingCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private categoryPageMetadataFactory: DaffCategoryPageMetadataFactory,\n private productFactory: DaffProductFactory,\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { DaffCategoryDriver } from '@daffodil/category/driver';\n\nimport { DaffTestingCategoryService } from './category.service';\n\n/**\n * A module for providing the {@link DaffTestingCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryTestingDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryTestingDriverModule> {\n return {\n ngModule: DaffCategoryTestingDriverModule,\n providers: [\n {\n provide: DaffCategoryDriver,\n useExisting: DaffTestingCategoryService,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-category-driver-testing.mjs","sources":["../../../libs/category/driver/testing/src/drivers/category.service.ts","../../../libs/category/driver/testing/src/drivers/category-driver.module.ts","../../../libs/category/driver/testing/src/daffodil-category-driver-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { DaffProductFactory } from '@daffodil/product/testing';\n\n/**\n * The category testing driver to mock {@link DaffCategoryServiceInterface}.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffTestingCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private categoryPageMetadataFactory: DaffCategoryPageMetadataFactory,\n private productFactory: DaffProductFactory,\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { provideDaffCategoryDriver } from '@daffodil/category/driver';\n\nimport { DaffTestingCategoryService } from './category.service';\n\n/**\n * A module for providing the {@link DaffTestingCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryTestingDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryTestingDriverModule> {\n return {\n ngModule: DaffCategoryTestingDriverModule,\n providers: [\n provideDaffCategoryDriver(DaffTestingCategoryService),\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAkBA;;;;AAIG;MAIU,0BAA0B,CAAA;AAErC,IAAA,WAAA,CACU,eAAoC,EACpC,2BAA4D,EAC5D,cAAkC,EAAA;QAFlC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAqB;QACpC,IAA2B,CAAA,2BAAA,GAA3B,2BAA2B,CAAiC;QAC5D,IAAc,CAAA,cAAA,GAAd,cAAc,CAAoB;KACxC;AAEJ,IAAA,GAAG,CAAC,eAAsC,EAAA;AACxC,QAAA,OAAO,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,SAAA,CAAC,CAAC;KACJ;AAED,IAAA,QAAQ,CAAC,eAAuC,EAAA;AAC9C,QAAA,OAAO,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,SAAA,CAAC,CAAC;KACJ;iIAtBU,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,+BAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,uBAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,cAFzB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACfD;;AAEG;MAMU,+BAA+B,CAAA;AAC1C,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,+BAA+B;AACzC,YAAA,SAAS,EAAE;gBACT,yBAAyB,CAAC,0BAA0B,CAAC;AACtD,aAAA;SACF,CAAC;KACH;iIARU,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAA/B,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,YAHxC,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAGH,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,YAHxC,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGH,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAL3C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;ACjBD;;AAEG;;;;"}
@@ -1,12 +1,16 @@
1
- import { InjectionToken } from '@angular/core';
1
+ import { createSingletonInjectionToken } from '@daffodil/core';
2
2
 
3
3
  //TODO(damienwebdev): This any generic is necessary until we ship Ivy packages, do not change it.
4
4
  //See: https://github.com/ng-packagr/ng-packagr/issues/1844
5
- const DaffCategoryDriver = new InjectionToken('DaffCategoryDriver');
5
+ const { token: DaffCategoryDriver,
6
+ /**
7
+ * Provider function for {@link DaffCategoryDriver}.
8
+ */
9
+ provider: provideDaffCategoryDriver, } = createSingletonInjectionToken('DaffCategoryDriver');
6
10
 
7
11
  /**
8
12
  * Generated bundle index. Do not edit.
9
13
  */
10
14
 
11
- export { DaffCategoryDriver };
15
+ export { DaffCategoryDriver, provideDaffCategoryDriver };
12
16
  //# sourceMappingURL=daffodil-category-driver.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-category-driver.mjs","sources":["../../../libs/category/driver/src/interfaces/category-service.interface.ts","../../../libs/category/driver/src/daffodil-category-driver.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { Observable } from 'rxjs';\n\nimport {\n DaffGenericCategory,\n DaffCategory,\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffProduct } from '@daffodil/product';\n\n/**\n * An interface for category service drivers.\n */\nexport interface DaffCategoryServiceInterface<\n V extends DaffGenericCategory<V> = DaffCategory,\n W extends DaffProduct = DaffProduct\n> {\n /**\n * Fetch a category by its ID.\n */\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse<V, W>>;\n /**\n * Fetch a category by its associated URL.\n */\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse<V, W>>;\n}\n\n//TODO(damienwebdev): This any generic is necessary until we ship Ivy packages, do not change it.\n//See: https://github.com/ng-packagr/ng-packagr/issues/1844\nexport const DaffCategoryDriver = new InjectionToken<any>('DaffCategoryDriver');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AA6BA;AACA;MACa,kBAAkB,GAAG,IAAI,cAAc,CAAM,oBAAoB;;AC/B9E;;AAEG;;;;"}
1
+ {"version":3,"file":"daffodil-category-driver.mjs","sources":["../../../libs/category/driver/src/interfaces/category-service.interface.ts","../../../libs/category/driver/src/daffodil-category-driver.ts"],"sourcesContent":["import { Observable } from 'rxjs';\n\nimport {\n DaffGenericCategory,\n DaffCategory,\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { createSingletonInjectionToken } from '@daffodil/core';\nimport { DaffProduct } from '@daffodil/product';\n\n/**\n * An interface for category service drivers.\n */\nexport interface DaffCategoryServiceInterface<\n V extends DaffGenericCategory<V> = DaffCategory,\n W extends DaffProduct = DaffProduct\n> {\n /**\n * Fetch a category by its ID.\n */\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse<V, W>>;\n /**\n * Fetch a category by its associated URL.\n */\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse<V, W>>;\n}\n\n//TODO(damienwebdev): This any generic is necessary until we ship Ivy packages, do not change it.\n//See: https://github.com/ng-packagr/ng-packagr/issues/1844\nexport const {\n token: DaffCategoryDriver,\n /**\n * Provider function for {@link DaffCategoryDriver}.\n */\n provider: provideDaffCategoryDriver,\n} = createSingletonInjectionToken<any>('DaffCategoryDriver');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AA6BA;AACA;AACO,MAAM,EACX,KAAK,EAAE,kBAAkB;AACzB;;AAEG;AACH,QAAQ,EAAE,yBAAyB,GACpC,GAAG,6BAA6B,CAAM,oBAAoB;;ACrC3D;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, PLATFORM_ID, Injectable, Inject, inject, NgModule } from '@angular/core';
2
+ import { PLATFORM_ID, Injectable, Inject, inject, NgModule } from '@angular/core';
3
3
  import { isPlatformBrowser } from '@angular/common';
4
4
  import * as i1$2 from '@ngrx/effects';
5
5
  import { ofType, EffectsModule } from '@ngrx/effects';
@@ -9,15 +9,21 @@ import { map, take } from 'rxjs/operators';
9
9
  import { DaffCategoryRequestKind } from '@daffodil/category';
10
10
  import * as i3 from '@daffodil/category/state';
11
11
  import { DaffCategoryPageLoad, DaffCategoryPageActionTypes, DaffCategoryPageLoadByUrl, DaffCategoryPageProductCollectionActionTypes } from '@daffodil/category/state';
12
+ import { createSingleInjectionToken, createMultiInjectionToken } from '@daffodil/core';
12
13
  import * as i1$1 from '@daffodil/core/routing';
13
14
  import * as i4 from '@daffodil/product/routing';
14
15
  import { DaffProductRoutingCollectionEffects, DaffProductRoutingModule, DaffProductGetCollectionRequestFromRoute } from '@daffodil/product/routing';
15
16
  import * as i2 from '@angular/router';
16
17
 
18
+ const {
17
19
  /**
18
20
  * An internal token to combine the {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS} into a single builder.
19
21
  */
20
- const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER = new InjectionToken('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER', {
22
+ token: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,
23
+ /**
24
+ * Provider function for {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER}.
25
+ */
26
+ provider: provideDaffCategoryRoutingOptionsBuilder, } = createSingleInjectionToken('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER', {
21
27
  factory: () => () => ({}),
22
28
  });
23
29
 
@@ -57,7 +63,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
57
63
  * Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url
58
64
  * of the form `some/url/{id}` where `{id}` is the category id.
59
65
  *
60
- * @deprecated
66
+ * @deprecated Deprecated in version 0.78.0. Will be removed in version 0.81.0.
61
67
  * @see DaffCategoryPageIdResolver
62
68
  */
63
69
  class DaffCategoryPageResolver {
@@ -130,12 +136,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
130
136
  args: [PLATFORM_ID]
131
137
  }] }, { type: i1.Store }, { type: i1.ActionsSubject }, { type: DaffCategoryRoutingUrlRequestBuilder }] });
132
138
 
139
+ const {
133
140
  /**
134
141
  * A multi-provider injection token for category request builders.
135
142
  * These builders are called with the requested route during the resolve step
136
143
  * and return options to pass to the category driver.
137
144
  */
138
- const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS = new InjectionToken('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS', { factory: () => [] });
145
+ token: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
139
146
  /**
140
147
  * Provides category request builders for the routing layer.
141
148
  *
@@ -143,7 +150,7 @@ const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS = new InjectionToken('DAFF_CATEGORY
143
150
  *
144
151
  * ```ts
145
152
  * providers: [
146
- * ...daffProvideCategoryRoutingRequestBuilders(
153
+ * ...provideDaffCategoryRoutingRequestBuilders(
147
154
  * route => ({
148
155
  * currentPage: route.queryParams.page
149
156
  * })
@@ -151,13 +158,7 @@ const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS = new InjectionToken('DAFF_CATEGORY
151
158
  * ]
152
159
  * ```
153
160
  */
154
- function daffProvideCategoryRoutingRequestBuilders(...builders) {
155
- return builders.map(builder => ({
156
- provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
157
- useValue: builder,
158
- multi: true,
159
- }));
160
- }
161
+ provider: provideDaffCategoryRoutingRequestBuilders, } = createMultiInjectionToken('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS');
161
162
 
162
163
  class DaffCategoryRoutingCollectionEffects extends DaffProductRoutingCollectionEffects {
163
164
  constructor(actions$, router, collectionFacade, getQueryParams, route) {
@@ -237,5 +238,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
237
238
  * Generated bundle index. Do not edit.
238
239
  */
239
240
 
240
- export { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS, DaffCategoryPageIdResolver, DaffCategoryPageResolver, DaffCategoryPageUrlResolver, DaffCategoryRoutingModule, DaffCategoryRoutingUrlRequestBuilder, daffProvideCategoryRoutingRequestBuilders };
241
+ export { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS, DaffCategoryPageIdResolver, DaffCategoryPageResolver, DaffCategoryPageUrlResolver, DaffCategoryRoutingModule, DaffCategoryRoutingUrlRequestBuilder, provideDaffCategoryRoutingRequestBuilders };
241
242
  //# sourceMappingURL=daffodil-category-routing.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-category-routing.mjs","sources":["../../../libs/category/routing/src/injection-tokens/request/builder.token.ts","../../../libs/category/routing/src/resolvers/category-page-id/category-page-id.resolver.ts","../../../libs/category/routing/src/resolvers/category-page/category-page.resolver.ts","../../../libs/category/routing/src/services/url-request-builder.service.ts","../../../libs/category/routing/src/resolvers/category-page-url/category-page-url.resolver.ts","../../../libs/category/routing/src/injection-tokens/request/builders.token.ts","../../../libs/category/routing/src/effects/collection-route.effects.ts","../../../libs/category/routing/src/module.ts","../../../libs/category/routing/src/daffodil-category-routing.ts"],"sourcesContent":["import {\n inject,\n InjectionToken,\n} from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\n\nimport {\n DaffCategoryRoutingRequestBuilder,\n DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n} from './builders.token';\n\n/**\n * An internal token to combine the {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS} into a single builder.\n */\nexport const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER = new InjectionToken<DaffCategoryRoutingRequestBuilder>(\n 'DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER',\n {\n factory: () => () => ({}),\n },\n);\n","import { isPlatformBrowser } from '@angular/common';\nimport {\n Inject,\n Injectable,\n PLATFORM_ID,\n} from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\nimport { ofType } from '@ngrx/effects';\nimport {\n ActionsSubject,\n Store,\n} from '@ngrx/store';\nimport {\n Observable,\n of,\n} from 'rxjs';\nimport {\n map,\n take,\n} from 'rxjs/operators';\n\nimport { DaffCategoryRequestKind } from '@daffodil/category';\nimport {\n DaffCategoryReducersState,\n DaffCategoryPageLoad,\n DaffCategoryPageActionTypes,\n} from '@daffodil/category/state';\n\nimport { DaffCategoryRoutingRequestBuilder } from '../../injection-tokens/public_api';\nimport { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from '../../injection-tokens/request/builder.token';\n\n/**\n * Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url\n * of the form `some/url/{id}` where `{id}` is the category id.\n */\n@Injectable()\nexport class DaffCategoryPageIdResolver {\n constructor(\n @Inject(PLATFORM_ID) private platformId: string,\n @Inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER) private requestBuilder: DaffCategoryRoutingRequestBuilder,\n private store: Store<DaffCategoryReducersState>,\n private dispatcher: ActionsSubject,\n ) { }\n\n resolve(route: ActivatedRouteSnapshot): Observable<boolean> {\n this.store.dispatch(new DaffCategoryPageLoad({\n ...this.requestBuilder(route),\n id: route.paramMap.get('id'),\n kind: DaffCategoryRequestKind.ID,\n }));\n\n return isPlatformBrowser(this.platformId) ? of(true) : this.dispatcher.pipe(\n ofType(DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction, DaffCategoryPageActionTypes.CategoryPageLoadFailureAction),\n map(() => true),\n take(1),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { DaffCategoryPageIdResolver } from '../category-page-id/category-page-id.resolver';\n\n/**\n * Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url\n * of the form `some/url/{id}` where `{id}` is the category id.\n *\n * @deprecated\n * @see DaffCategoryPageIdResolver\n */\n@Injectable()\nexport class DaffCategoryPageResolver {\n constructor(\n private categoryPageIdResolver: DaffCategoryPageIdResolver,\n ) { }\n\n resolve(route: ActivatedRouteSnapshot): Observable<boolean> {\n return this.categoryPageIdResolver.resolve(route);\n }\n}\n","import {\n Inject,\n Injectable,\n} from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n} from '@angular/router';\n\nimport {\n DaffCategoryRequestKind,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffRoutingUriNormalizer } from '@daffodil/core/routing';\n\nimport { DaffCategoryRoutingRequestBuilder } from '../injection-tokens/public_api';\nimport { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from '../injection-tokens/request/builder.token';\n\n@Injectable({\n providedIn: 'any',\n})\nexport class DaffCategoryRoutingUrlRequestBuilder {\n constructor(\n @Inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER) private requestBuilder: DaffCategoryRoutingRequestBuilder,\n private urlNormalizer: DaffRoutingUriNormalizer,\n ) { }\n\n /**\n * Builds a category URL request from the provided route and router state that\n * is suitable for passing to {@link DaffCategoryPageLoadByUrl}.\n */\n build(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): DaffCategoryUrlRequest {\n return {\n ...this.requestBuilder(route),\n url: this.urlNormalizer.normalize(state.url),\n kind: DaffCategoryRequestKind.URL,\n };\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport {\n Inject,\n Injectable,\n PLATFORM_ID,\n} from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n} from '@angular/router';\nimport { ofType } from '@ngrx/effects';\nimport {\n ActionsSubject,\n Store,\n} from '@ngrx/store';\nimport {\n Observable,\n of,\n} from 'rxjs';\nimport {\n map,\n take,\n} from 'rxjs/operators';\n\nimport {\n DaffCategoryReducersState,\n DaffCategoryPageActionTypes,\n DaffCategoryPageLoadByUrl,\n} from '@daffodil/category/state';\n\nimport { DaffCategoryRoutingUrlRequestBuilder } from '../../services/public_api';\n\n/**\n * Resolves category data for category pages, and will only resolve the url\n * after a category request succeeds or fails. This resolver will take a full\n * a url of the form `some/url.html(secondary:outlet)?query=param#fragment` and attempt to resolve a product from it.\n * Assumes that the URL to be resolved is the primary outlet.\n */\n@Injectable()\nexport class DaffCategoryPageUrlResolver {\n constructor(\n @Inject(PLATFORM_ID) private platformId: string,\n private store: Store<DaffCategoryReducersState>,\n private dispatcher: ActionsSubject,\n private requestBuilder: DaffCategoryRoutingUrlRequestBuilder,\n ) { }\n\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> {\n this.store.dispatch(new DaffCategoryPageLoadByUrl(this.requestBuilder.build(route, state)));\n\n return isPlatformBrowser(this.platformId) ? of(true) : this.dispatcher.pipe(\n ofType(DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction, DaffCategoryPageActionTypes.CategoryPageLoadFailureAction),\n map(() => true),\n take(1),\n );\n }\n}\n","import {\n InjectionToken,\n ValueProvider,\n} from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\n\nimport { DaffCollectionRequest } from '@daffodil/core';\n\n\nexport type DaffCategoryRoutingRequestBuilder<T extends DaffCollectionRequest = DaffCollectionRequest> = (route: ActivatedRouteSnapshot) => T;\n\n/**\n * A multi-provider injection token for category request builders.\n * These builders are called with the requested route during the resolve step\n * and return options to pass to the category driver.\n */\nexport const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS = new InjectionToken<DaffCategoryRoutingRequestBuilder[]>(\n 'DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS',\n { factory: () => []},\n);\n\n/**\n * Provides category request builders for the routing layer.\n *\n * See {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS}.\n *\n * ```ts\n * providers: [\n * ...daffProvideCategoryRoutingRequestBuilders(\n * route => ({\n * currentPage: route.queryParams.page\n * })\n * )\n * ]\n * ```\n */\nexport function daffProvideCategoryRoutingRequestBuilders(...builders: DaffCategoryRoutingRequestBuilder[]): ValueProvider[] {\n return builders.map(builder => ({\n provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n useValue: builder,\n multi: true,\n }));\n}\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\nimport { Actions } from '@ngrx/effects';\n\nimport {\n DaffCategoryPageProductCollectionActionTypes,\n DaffCategoryProductCollectionFacade,\n} from '@daffodil/category/state';\nimport {\n DaffProductGetQueryParamsFromRequest,\n DaffProductRoutingCollectionEffects,\n} from '@daffodil/product/routing';\n\n@Injectable()\nexport class DaffCategoryRoutingCollectionEffects extends DaffProductRoutingCollectionEffects {\n constructor(\n actions$: Actions,\n router: Router,\n collectionFacade: DaffCategoryProductCollectionFacade,\n getQueryParams: DaffProductGetQueryParamsFromRequest,\n route: ActivatedRoute,\n ) {\n super(\n actions$,\n router,\n Object.values(DaffCategoryPageProductCollectionActionTypes),\n collectionFacade,\n getQueryParams,\n route,\n );\n }\n}\n","import {\n inject,\n NgModule,\n} from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\nimport { EffectsModule } from '@ngrx/effects';\n\nimport {\n DaffProductGetCollectionRequestFromRoute,\n DaffProductRoutingModule,\n} from '@daffodil/product/routing';\n\nimport { DaffCategoryRoutingCollectionEffects } from './effects/collection-route.effects';\nimport {\n DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n DaffCategoryRoutingRequestBuilder,\n} from './injection-tokens/public_api';\nimport { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from './injection-tokens/request/builder.token';\nimport {\n DaffCategoryPageIdResolver,\n DaffCategoryPageResolver,\n DaffCategoryPageUrlResolver,\n} from './resolvers/public_api';\nimport { DaffCategoryRoutingUrlRequestBuilder } from './services/public_api';\n\n@NgModule({\n imports: [\n DaffProductRoutingModule,\n EffectsModule.forFeature([\n DaffCategoryRoutingCollectionEffects,\n ]),\n ],\n providers: [\n DaffCategoryPageResolver,\n DaffCategoryPageIdResolver,\n DaffCategoryPageUrlResolver,\n DaffCategoryRoutingUrlRequestBuilder,\n {\n provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n useFactory: () => {\n const service = inject(DaffProductGetCollectionRequestFromRoute);\n const builder: DaffCategoryRoutingRequestBuilder = route => service.getRequest(route.queryParamMap);\n return builder;\n },\n multi: true,\n },\n {\n provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,\n useFactory: () => {\n const builders = inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS);\n return (route: ActivatedRouteSnapshot) =>\n Object.assign({}, ...builders.map(builder => builder(route)));\n },\n },\n ],\n})\nexport class DaffCategoryRoutingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffCategoryPageIdResolver","i1","i2.DaffCategoryRoutingUrlRequestBuilder"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-category-routing.mjs","sources":["../../../libs/category/routing/src/injection-tokens/request/builder.token.ts","../../../libs/category/routing/src/resolvers/category-page-id/category-page-id.resolver.ts","../../../libs/category/routing/src/resolvers/category-page/category-page.resolver.ts","../../../libs/category/routing/src/services/url-request-builder.service.ts","../../../libs/category/routing/src/resolvers/category-page-url/category-page-url.resolver.ts","../../../libs/category/routing/src/injection-tokens/request/builders.token.ts","../../../libs/category/routing/src/effects/collection-route.effects.ts","../../../libs/category/routing/src/module.ts","../../../libs/category/routing/src/daffodil-category-routing.ts"],"sourcesContent":["import { createSingleInjectionToken } from '@daffodil/core';\n\nimport { DaffCategoryRoutingRequestBuilder } from './builders.token';\n\n\nexport const {\n /**\n * An internal token to combine the {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS} into a single builder.\n */\n token: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,\n /**\n * Provider function for {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER}.\n */\n provider: provideDaffCategoryRoutingOptionsBuilder,\n} = createSingleInjectionToken<DaffCategoryRoutingRequestBuilder>(\n 'DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER',\n {\n factory: () => () => ({}),\n },\n);\n","import { isPlatformBrowser } from '@angular/common';\nimport {\n Inject,\n Injectable,\n PLATFORM_ID,\n} from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\nimport { ofType } from '@ngrx/effects';\nimport {\n ActionsSubject,\n Store,\n} from '@ngrx/store';\nimport {\n Observable,\n of,\n} from 'rxjs';\nimport {\n map,\n take,\n} from 'rxjs/operators';\n\nimport { DaffCategoryRequestKind } from '@daffodil/category';\nimport {\n DaffCategoryReducersState,\n DaffCategoryPageLoad,\n DaffCategoryPageActionTypes,\n} from '@daffodil/category/state';\n\nimport { DaffCategoryRoutingRequestBuilder } from '../../injection-tokens/public_api';\nimport { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from '../../injection-tokens/request/builder.token';\n\n/**\n * Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url\n * of the form `some/url/{id}` where `{id}` is the category id.\n */\n@Injectable()\nexport class DaffCategoryPageIdResolver {\n constructor(\n @Inject(PLATFORM_ID) private platformId: string,\n @Inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER) private requestBuilder: DaffCategoryRoutingRequestBuilder,\n private store: Store<DaffCategoryReducersState>,\n private dispatcher: ActionsSubject,\n ) { }\n\n resolve(route: ActivatedRouteSnapshot): Observable<boolean> {\n this.store.dispatch(new DaffCategoryPageLoad({\n ...this.requestBuilder(route),\n id: route.paramMap.get('id'),\n kind: DaffCategoryRequestKind.ID,\n }));\n\n return isPlatformBrowser(this.platformId) ? of(true) : this.dispatcher.pipe(\n ofType(DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction, DaffCategoryPageActionTypes.CategoryPageLoadFailureAction),\n map(() => true),\n take(1),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { DaffCategoryPageIdResolver } from '../category-page-id/category-page-id.resolver';\n\n/**\n * Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url\n * of the form `some/url/{id}` where `{id}` is the category id.\n *\n * @deprecated Deprecated in version 0.78.0. Will be removed in version 0.81.0.\n * @see DaffCategoryPageIdResolver\n */\n@Injectable()\nexport class DaffCategoryPageResolver {\n constructor(\n private categoryPageIdResolver: DaffCategoryPageIdResolver,\n ) { }\n\n resolve(route: ActivatedRouteSnapshot): Observable<boolean> {\n return this.categoryPageIdResolver.resolve(route);\n }\n}\n","import {\n Inject,\n Injectable,\n} from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n} from '@angular/router';\n\nimport {\n DaffCategoryRequestKind,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffRoutingUriNormalizer } from '@daffodil/core/routing';\n\nimport { DaffCategoryRoutingRequestBuilder } from '../injection-tokens/public_api';\nimport { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from '../injection-tokens/request/builder.token';\n\n@Injectable({\n providedIn: 'any',\n})\nexport class DaffCategoryRoutingUrlRequestBuilder {\n constructor(\n @Inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER) private requestBuilder: DaffCategoryRoutingRequestBuilder,\n private urlNormalizer: DaffRoutingUriNormalizer,\n ) { }\n\n /**\n * Builds a category URL request from the provided route and router state that\n * is suitable for passing to {@link DaffCategoryPageLoadByUrl}.\n */\n build(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): DaffCategoryUrlRequest {\n return {\n ...this.requestBuilder(route),\n url: this.urlNormalizer.normalize(state.url),\n kind: DaffCategoryRequestKind.URL,\n };\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport {\n Inject,\n Injectable,\n PLATFORM_ID,\n} from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n} from '@angular/router';\nimport { ofType } from '@ngrx/effects';\nimport {\n ActionsSubject,\n Store,\n} from '@ngrx/store';\nimport {\n Observable,\n of,\n} from 'rxjs';\nimport {\n map,\n take,\n} from 'rxjs/operators';\n\nimport {\n DaffCategoryReducersState,\n DaffCategoryPageActionTypes,\n DaffCategoryPageLoadByUrl,\n} from '@daffodil/category/state';\n\nimport { DaffCategoryRoutingUrlRequestBuilder } from '../../services/public_api';\n\n/**\n * Resolves category data for category pages, and will only resolve the url\n * after a category request succeeds or fails. This resolver will take a full\n * a url of the form `some/url.html(secondary:outlet)?query=param#fragment` and attempt to resolve a product from it.\n * Assumes that the URL to be resolved is the primary outlet.\n */\n@Injectable()\nexport class DaffCategoryPageUrlResolver {\n constructor(\n @Inject(PLATFORM_ID) private platformId: string,\n private store: Store<DaffCategoryReducersState>,\n private dispatcher: ActionsSubject,\n private requestBuilder: DaffCategoryRoutingUrlRequestBuilder,\n ) { }\n\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> {\n this.store.dispatch(new DaffCategoryPageLoadByUrl(this.requestBuilder.build(route, state)));\n\n return isPlatformBrowser(this.platformId) ? of(true) : this.dispatcher.pipe(\n ofType(DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction, DaffCategoryPageActionTypes.CategoryPageLoadFailureAction),\n map(() => true),\n take(1),\n );\n }\n}\n","import { ActivatedRouteSnapshot } from '@angular/router';\n\nimport {\n DaffCollectionRequest,\n createMultiInjectionToken,\n} from '@daffodil/core';\n\nexport type DaffCategoryRoutingRequestBuilder<T extends DaffCollectionRequest = DaffCollectionRequest> = (route: ActivatedRouteSnapshot) => T;\n\nexport const {\n /**\n * A multi-provider injection token for category request builders.\n * These builders are called with the requested route during the resolve step\n * and return options to pass to the category driver.\n */\n token: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n\n /**\n * Provides category request builders for the routing layer.\n *\n * See {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS}.\n *\n * ```ts\n * providers: [\n * ...provideDaffCategoryRoutingRequestBuilders(\n * route => ({\n * currentPage: route.queryParams.page\n * })\n * )\n * ]\n * ```\n */\n provider: provideDaffCategoryRoutingRequestBuilders,\n} = createMultiInjectionToken<DaffCategoryRoutingRequestBuilder>('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS');\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\nimport { Actions } from '@ngrx/effects';\n\nimport {\n DaffCategoryPageProductCollectionActionTypes,\n DaffCategoryProductCollectionFacade,\n} from '@daffodil/category/state';\nimport {\n DaffProductGetQueryParamsFromRequest,\n DaffProductRoutingCollectionEffects,\n} from '@daffodil/product/routing';\n\n@Injectable()\nexport class DaffCategoryRoutingCollectionEffects extends DaffProductRoutingCollectionEffects {\n constructor(\n actions$: Actions,\n router: Router,\n collectionFacade: DaffCategoryProductCollectionFacade,\n getQueryParams: DaffProductGetQueryParamsFromRequest,\n route: ActivatedRoute,\n ) {\n super(\n actions$,\n router,\n Object.values(DaffCategoryPageProductCollectionActionTypes),\n collectionFacade,\n getQueryParams,\n route,\n );\n }\n}\n","import {\n inject,\n NgModule,\n} from '@angular/core';\nimport { ActivatedRouteSnapshot } from '@angular/router';\nimport { EffectsModule } from '@ngrx/effects';\n\nimport {\n DaffProductGetCollectionRequestFromRoute,\n DaffProductRoutingModule,\n} from '@daffodil/product/routing';\n\nimport { DaffCategoryRoutingCollectionEffects } from './effects/collection-route.effects';\nimport {\n DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n DaffCategoryRoutingRequestBuilder,\n} from './injection-tokens/public_api';\nimport { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from './injection-tokens/request/builder.token';\nimport {\n DaffCategoryPageIdResolver,\n DaffCategoryPageResolver,\n DaffCategoryPageUrlResolver,\n} from './resolvers/public_api';\nimport { DaffCategoryRoutingUrlRequestBuilder } from './services/public_api';\n\n@NgModule({\n imports: [\n DaffProductRoutingModule,\n EffectsModule.forFeature([\n DaffCategoryRoutingCollectionEffects,\n ]),\n ],\n providers: [\n DaffCategoryPageResolver,\n DaffCategoryPageIdResolver,\n DaffCategoryPageUrlResolver,\n DaffCategoryRoutingUrlRequestBuilder,\n {\n provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,\n useFactory: () => {\n const service = inject(DaffProductGetCollectionRequestFromRoute);\n const builder: DaffCategoryRoutingRequestBuilder = route => service.getRequest(route.queryParamMap);\n return builder;\n },\n multi: true,\n },\n {\n provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,\n useFactory: () => {\n const builders = inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS);\n return (route: ActivatedRouteSnapshot) =>\n Object.assign({}, ...builders.map(builder => builder(route)));\n },\n },\n ],\n})\nexport class DaffCategoryRoutingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffCategoryPageIdResolver","i1","i2.DaffCategoryRoutingUrlRequestBuilder"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, Injectable, Inject, inject, NgModule } from '@angular/core';
2
+ import { Injectable, Inject, inject, NgModule } from '@angular/core';
3
3
  import * as i1$1 from '@ngrx/effects';
4
4
  import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
5
5
  import * as i1 from '@ngrx/store';
@@ -9,7 +9,7 @@ import { of, asyncScheduler } from 'rxjs';
9
9
  import { withLatestFrom, map, throttleTime, switchMap, catchError, mergeMap } from 'rxjs/operators';
10
10
  import { DaffCategoryRequestKind } from '@daffodil/category';
11
11
  import { DaffCategoryDriver } from '@daffodil/category/driver';
12
- import { daffToggleRequestOnFilters, daffRemoveRequestsFromFilters, daffClearFilters, daffApplyRequestsToFilters, daffFiltersToRequests } from '@daffodil/core';
12
+ import { daffToggleRequestOnFilters, daffRemoveRequestsFromFilters, daffClearFilters, daffApplyRequestsToFilters, createMultiInjectionToken, createSingleInjectionToken, daffFiltersToRequests } from '@daffodil/core';
13
13
  import { createEntityAdapter } from '@ngrx/entity';
14
14
  import { daffOperationInitialState, daffOperationFailed, daffCompleteOperation, daffStartMutation, daffStartResolution, daffCollectionReducerInitialState, getCollectionStateAdapter, daffOperationStateSelectorFactory, daffCollectionSelectorFactory, DaffCollectionFacade, daffTransformErrorToStateError, daffComposeReducers, daffIdentityReducer } from '@daffodil/core/state';
15
15
 
@@ -32,7 +32,7 @@ var DaffCategoryPageProductCollectionActionTypes;
32
32
  * An action for changing the filters for the current category.
33
33
  *
34
34
  * @param filters - Filters to be changed on the current category.
35
- * @deprecated use {@link DaffCategoryPageReplaceFilters} or {@link DaffCategoryPageApplyFilters}
35
+ * @deprecated use {@link DaffCategoryPageReplaceFilters} or {@link DaffCategoryPageApplyFilters} Deprecated in version 0.78.0. Will be removed in version 0.81.0.
36
36
  */
37
37
  class DaffCategoryPageChangeFilters {
38
38
  constructor(filters) {
@@ -353,15 +353,13 @@ const daffCategoryReducers = {
353
353
  */
354
354
  const DAFF_CATEGORY_STORE_FEATURE_KEY = 'daffCategory';
355
355
 
356
+ const {
356
357
  /**
357
358
  * A token to hold the injectable extra reducers.
358
359
  *
359
360
  * Prefer using {@link daffCategoryProvideExtraReducers}.
360
361
  */
361
- const DAFF_CATEGORY_EXTRA_REDUCERS = new InjectionToken('DAFF_CATEGORY_EXTRA_REDUCERS', {
362
- factory: () => [],
363
- providedIn: 'any',
364
- });
362
+ token: DAFF_CATEGORY_EXTRA_REDUCERS,
365
363
  /**
366
364
  * Provides additional reducers that run after the standard Daffodil category reducers.
367
365
  *
@@ -374,13 +372,7 @@ const DAFF_CATEGORY_EXTRA_REDUCERS = new InjectionToken('DAFF_CATEGORY_EXTRA_RED
374
372
  * ]
375
373
  * ```
376
374
  */
377
- function daffCategoryProvideExtraReducers(...reducers) {
378
- return reducers.map(reducer => ({
379
- provide: DAFF_CATEGORY_EXTRA_REDUCERS,
380
- useValue: reducer,
381
- multi: true,
382
- }));
383
- }
375
+ provider: daffCategoryProvideExtraReducers, } = createMultiInjectionToken('DAFF_CATEGORY_EXTRA_REDUCERS', { providedIn: 'any' });
384
376
 
385
377
  /**
386
378
  * A function that returns a selector for the entire category feature state.
@@ -548,13 +540,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
548
540
  }]
549
541
  }], ctorParameters: () => [{ type: i1.Store }] });
550
542
 
543
+ const {
551
544
  /**
552
545
  * Transforms `DaffError`s into `DaffStateError`s before they are serialized into state.
553
546
  * Can be used to further refine Daffodil errors into more specific app errors.
554
547
  */
555
- const DAFF_CATEGORY_ERROR_MATCHER = new InjectionToken('DAFF_CATEGORY_ERROR_MATCHER', { factory: () => daffTransformErrorToStateError });
548
+ token: DAFF_CATEGORY_ERROR_MATCHER,
549
+ /**
550
+ * Provider function for {@link DAFF_CATEGORY_ERROR_MATCHER}.
551
+ */
552
+ provider: provideDaffCategoryErrorMatcher, } = createSingleInjectionToken('DAFF_CATEGORY_ERROR_MATCHER', { factory: () => daffTransformErrorToStateError });
556
553
 
557
- class DaffCategoryPageFilterEffects {
554
+ class DaffCategoryPageMetadataEffects {
558
555
  constructor(actions$, driver, errorMatcher, facade) {
559
556
  this.actions$ = actions$;
560
557
  this.driver = driver;
@@ -568,7 +565,7 @@ class DaffCategoryPageFilterEffects {
568
565
  * @param throttleWindow the amount of time to delay when apply/removing filters
569
566
  * in a sequence.
570
567
  */
571
- this.updateFilters$ = createEffect(() => (throttleWindow = 300, scheduler = asyncScheduler) => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageReplaceFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageApplyFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageClearFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageRemoveFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageToggleFilterAction), withLatestFrom(this.facade.metadata$), map(([action, metadata]) => ({
568
+ this.update$ = createEffect(() => (throttleWindow = 300, scheduler = asyncScheduler) => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageReplaceFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageApplyFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageClearFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageRemoveFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageToggleFilterAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSizeAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction), withLatestFrom(this.facade.metadata$), map(([action, metadata]) => ({
572
569
  kind: DaffCategoryRequestKind.ID,
573
570
  id: metadata.id,
574
571
  filterRequests: daffFiltersToRequests(metadata.filters),
@@ -581,10 +578,10 @@ class DaffCategoryPageFilterEffects {
581
578
  new DaffCategoryPageLoadSuccess(resp),
582
579
  ]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
583
580
  }
584
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageFilterEffects, deps: [{ token: i1$1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }, { token: DaffCategoryProductCollectionFacade }], target: i0.ɵɵFactoryTarget.Injectable }); }
585
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageFilterEffects }); }
581
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageMetadataEffects, deps: [{ token: i1$1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }, { token: DaffCategoryProductCollectionFacade }], target: i0.ɵɵFactoryTarget.Injectable }); }
582
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageMetadataEffects }); }
586
583
  }
587
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageFilterEffects, decorators: [{
584
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageMetadataEffects, decorators: [{
588
585
  type: Injectable
589
586
  }], ctorParameters: () => [{ type: i1$1.Actions }, { type: undefined, decorators: [{
590
587
  type: Inject,
@@ -595,44 +592,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
595
592
  }] }, { type: DaffCategoryProductCollectionFacade }] });
596
593
 
597
594
  class DaffCategoryPageEffects {
598
- constructor(actions$, driver, errorMatcher, store) {
595
+ constructor(actions$, driver, errorMatcher) {
599
596
  this.actions$ = actions$;
600
597
  this.driver = driver;
601
598
  this.errorMatcher = errorMatcher;
602
- this.store = store;
603
- this.categorySelectors = getDaffCategorySelectors();
604
- this.loadCategoryPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadAction), switchMap((action) => this.processCategoryGetRequest(action.request))));
605
- this.loadCategoryPageByUrl$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadByUrlAction), switchMap((action) => this.driver.getByUrl(action.request).pipe(switchMap((resp) => [
599
+ this.loadCategoryPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadAction), switchMap((action) => this.driver.get(action.request).pipe(switchMap((resp) => [
606
600
  new DaffProductGridLoadSuccess(resp.products),
607
601
  new DaffCategoryPageLoadSuccess(resp),
608
602
  ]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
609
- this.changeCategoryPageSize$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSizeAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
610
- ...metadata,
611
- kind: DaffCategoryRequestKind.ID,
612
- filterRequests: daffFiltersToRequests(metadata.filters),
613
- pageSize: action.pageSize,
614
- }))));
615
- this.changeCategoryCurrentPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
616
- ...metadata,
617
- kind: DaffCategoryRequestKind.ID,
618
- filterRequests: daffFiltersToRequests(metadata.filters),
619
- currentPage: action.currentPage,
620
- }))));
621
- this.changeCategorySort$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
622
- ...metadata,
623
- kind: DaffCategoryRequestKind.ID,
624
- filterRequests: daffFiltersToRequests(metadata.filters),
625
- appliedSortOption: action.sort.option,
626
- appliedSortDirection: action.sort.direction,
627
- }))));
628
- }
629
- processCategoryGetRequest(payload) {
630
- return this.driver.get(payload).pipe(switchMap((resp) => [
603
+ this.loadCategoryPageByUrl$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadByUrlAction), switchMap((action) => this.driver.getByUrl(action.request).pipe(switchMap((resp) => [
631
604
  new DaffProductGridLoadSuccess(resp.products),
632
605
  new DaffCategoryPageLoadSuccess(resp),
633
- ]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error)))));
606
+ ]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
634
607
  }
635
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects, deps: [{ token: i1$1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }, { token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
608
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects, deps: [{ token: i1$1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }], target: i0.ɵɵFactoryTarget.Injectable }); }
636
609
  /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects }); }
637
610
  }
638
611
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects, decorators: [{
@@ -643,7 +616,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
643
616
  }] }, { type: undefined, decorators: [{
644
617
  type: Inject,
645
618
  args: [DAFF_CATEGORY_ERROR_MATCHER]
646
- }] }, { type: i1.Store }] });
619
+ }] }] });
647
620
 
648
621
  class DaffCategoryEffects {
649
622
  constructor(actions$, driver, errorMatcher) {
@@ -665,13 +638,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
665
638
  args: [DAFF_CATEGORY_ERROR_MATCHER]
666
639
  }] }] });
667
640
 
641
+ const {
668
642
  /**
669
643
  * An internal token to hold the Daffodil category reducers.
670
644
  * Includes the extra and standard reducers.
671
645
  *
672
646
  * @docs-private
673
647
  */
674
- const DAFF_CATEGORY_REDUCERS = new InjectionToken('DAFF_CATEGORY_REDUCERS', {
648
+ token: DAFF_CATEGORY_REDUCERS,
649
+ /**
650
+ * Provider function for {@link DAFF_CATEGORY_REDUCERS}.
651
+ */
652
+ provider: provideDaffCategoryReducers, } = createSingleInjectionToken('DAFF_CATEGORY_REDUCERS', {
675
653
  providedIn: 'any',
676
654
  factory: () => daffComposeReducers([
677
655
  combineReducers(daffCategoryReducers),
@@ -686,7 +664,7 @@ class DaffCategoryStateModule {
686
664
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
687
665
  /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, imports: [i1.StoreFeatureModule, i1$1.EffectsFeatureModule, DaffProductStateModule] }); }
688
666
  /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, imports: [StoreModule.forFeature(DAFF_CATEGORY_STORE_FEATURE_KEY, DAFF_CATEGORY_REDUCERS),
689
- EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects, DaffCategoryPageFilterEffects]),
667
+ EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects, DaffCategoryPageMetadataEffects]),
690
668
  DaffProductStateModule] }); }
691
669
  }
692
670
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, decorators: [{
@@ -694,7 +672,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
694
672
  args: [{
695
673
  imports: [
696
674
  StoreModule.forFeature(DAFF_CATEGORY_STORE_FEATURE_KEY, DAFF_CATEGORY_REDUCERS),
697
- EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects, DaffCategoryPageFilterEffects]),
675
+ EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects, DaffCategoryPageMetadataEffects]),
698
676
  DaffProductStateModule,
699
677
  ],
700
678
  }]
@@ -759,5 +737,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
759
737
  * Generated bundle index. Do not edit.
760
738
  */
761
739
 
762
- export { DAFF_CATEGORY_ERROR_MATCHER, DAFF_CATEGORY_EXTRA_REDUCERS, DAFF_CATEGORY_STORE_FEATURE_KEY, DaffCategoryActionTypes, DaffCategoryFacade, DaffCategoryLoad, DaffCategoryLoadFailure, DaffCategoryLoadSuccess, DaffCategoryPageActionTypes, DaffCategoryPageApplyFilters, DaffCategoryPageChangeCurrentPage, DaffCategoryPageChangeFilters, DaffCategoryPageChangePageSize, DaffCategoryPageChangeSortingOption, DaffCategoryPageClearFilters, DaffCategoryPageLoad, DaffCategoryPageLoadByUrl, DaffCategoryPageLoadFailure, DaffCategoryPageLoadSuccess, DaffCategoryPageProductCollectionActionTypes, DaffCategoryPageRemoveFilters, DaffCategoryPageReplaceFilters, DaffCategoryPageToggleFilter, DaffCategoryProductCollectionFacade, DaffCategoryProductStateModule, DaffCategoryStateModule, daffCategoryEntitiesReducer, daffCategoryPageMetadataReducer, daffCategoryProvideExtraReducers, daffCategoryReducer, daffCategoryReducers, getDaffCategorySelectors };
740
+ export { DAFF_CATEGORY_ERROR_MATCHER, DAFF_CATEGORY_EXTRA_REDUCERS, DAFF_CATEGORY_STORE_FEATURE_KEY, DaffCategoryActionTypes, DaffCategoryFacade, DaffCategoryLoad, DaffCategoryLoadFailure, DaffCategoryLoadSuccess, DaffCategoryPageActionTypes, DaffCategoryPageApplyFilters, DaffCategoryPageChangeCurrentPage, DaffCategoryPageChangeFilters, DaffCategoryPageChangePageSize, DaffCategoryPageChangeSortingOption, DaffCategoryPageClearFilters, DaffCategoryPageLoad, DaffCategoryPageLoadByUrl, DaffCategoryPageLoadFailure, DaffCategoryPageLoadSuccess, DaffCategoryPageProductCollectionActionTypes, DaffCategoryPageRemoveFilters, DaffCategoryPageReplaceFilters, DaffCategoryPageToggleFilter, DaffCategoryProductCollectionFacade, DaffCategoryProductStateModule, DaffCategoryStateModule, daffCategoryEntitiesReducer, daffCategoryPageMetadataReducer, daffCategoryProvideExtraReducers, daffCategoryReducer, daffCategoryReducers, getDaffCategorySelectors, provideDaffCategoryErrorMatcher };
763
741
  //# sourceMappingURL=daffodil-category-state.mjs.map