@daffodil/category 0.77.0 → 0.79.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.
- package/driver/in-memory/backend/category.service.d.ts +3 -1
- package/driver/in-memory/collection-name.const.d.ts +1 -0
- package/driver/in-memory/drivers/category.service.d.ts +4 -3
- package/driver/interfaces/category-service.interface.d.ts +1 -2
- package/driver/magento/interfaces/config.interface.d.ts +1 -6
- package/driver/public_api.d.ts +1 -1
- package/esm2022/driver/in-memory/backend/category.service.mjs +3 -1
- package/esm2022/driver/in-memory/collection-name.const.mjs +2 -0
- package/esm2022/driver/in-memory/drivers/category-driver.module.mjs +6 -6
- package/esm2022/driver/in-memory/drivers/category.service.mjs +12 -8
- package/esm2022/driver/interfaces/category-service.interface.mjs +7 -3
- package/esm2022/driver/magento/category-driver.module.mjs +8 -31
- package/esm2022/driver/magento/interfaces/config.interface.mjs +8 -3
- package/esm2022/driver/public_api.mjs +2 -2
- package/esm2022/driver/testing/drivers/category-driver.module.mjs +3 -6
- package/esm2022/routing/injection-tokens/public_api.mjs +2 -2
- package/esm2022/routing/injection-tokens/request/builder.token.mjs +8 -3
- package/esm2022/routing/injection-tokens/request/builders.token.mjs +6 -11
- package/esm2022/routing/resolvers/category-page/category-page.resolver.mjs +2 -2
- package/esm2022/state/actions/category-page-filter.actions.mjs +2 -2
- package/esm2022/state/category-state.module.mjs +4 -4
- package/esm2022/state/effects/category-page-metadata.effects.mjs +55 -0
- package/esm2022/state/effects/category-page.effects.mjs +8 -38
- package/esm2022/state/injection-tokens/error-matcher.token.mjs +8 -3
- package/esm2022/state/injection-tokens/public_api.mjs +2 -2
- package/esm2022/state/reducers/token/extra.token.mjs +5 -13
- package/esm2022/state/reducers/token/reducers.token.mjs +9 -3
- package/fesm2022/daffodil-category-driver-in-memory.mjs +43 -40
- package/fesm2022/daffodil-category-driver-in-memory.mjs.map +1 -1
- package/fesm2022/daffodil-category-driver-magento.mjs +14 -32
- package/fesm2022/daffodil-category-driver-magento.mjs.map +1 -1
- package/fesm2022/daffodil-category-driver-testing.mjs +2 -5
- package/fesm2022/daffodil-category-driver-testing.mjs.map +1 -1
- package/fesm2022/daffodil-category-driver.mjs +7 -3
- package/fesm2022/daffodil-category-driver.mjs.map +1 -1
- package/fesm2022/daffodil-category-routing.mjs +14 -13
- package/fesm2022/daffodil-category-routing.mjs.map +1 -1
- package/fesm2022/daffodil-category-state.mjs +32 -54
- package/fesm2022/daffodil-category-state.mjs.map +1 -1
- package/package.json +1 -1
- package/routing/injection-tokens/public_api.d.ts +1 -1
- package/routing/injection-tokens/request/builder.token.d.ts +1 -5
- package/routing/injection-tokens/request/builders.token.d.ts +1 -23
- package/routing/resolvers/category-page/category-page.resolver.d.ts +1 -1
- package/state/actions/category-page-filter.actions.d.ts +1 -1
- package/state/effects/{category-page-filter.effects.d.ts → category-page-metadata.effects.d.ts} +4 -4
- package/state/effects/category-page.effects.d.ts +1 -8
- package/state/injection-tokens/error-matcher.token.d.ts +1 -6
- package/state/injection-tokens/public_api.d.ts +1 -1
- package/state/reducers/token/extra.token.d.ts +1 -20
- package/state/reducers/token/reducers.token.d.ts +1 -8
- package/esm2022/state/effects/category-page-filter.effects.mjs +0 -55
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
|
|
2
2
|
import { EffectsModule } from '@ngrx/effects';
|
3
3
|
import { StoreModule } from '@ngrx/store';
|
4
4
|
import { DaffProductStateModule } from '@daffodil/product/state';
|
5
|
-
import {
|
5
|
+
import { DaffCategoryPageMetadataEffects } from './effects/category-page-metadata.effects';
|
6
6
|
import { DaffCategoryPageEffects } from './effects/category-page.effects';
|
7
7
|
import { DaffCategoryEffects } from './effects/category.effects';
|
8
8
|
import { DAFF_CATEGORY_STORE_FEATURE_KEY } from './reducers/public_api';
|
@@ -17,7 +17,7 @@ export class DaffCategoryStateModule {
|
|
17
17
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
18
18
|
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, imports: [i1.StoreFeatureModule, i2.EffectsFeatureModule, DaffProductStateModule] }); }
|
19
19
|
/** @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),
|
20
|
-
EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects,
|
20
|
+
EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects, DaffCategoryPageMetadataEffects]),
|
21
21
|
DaffProductStateModule] }); }
|
22
22
|
}
|
23
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryStateModule, decorators: [{
|
@@ -25,9 +25,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
|
|
25
25
|
args: [{
|
26
26
|
imports: [
|
27
27
|
StoreModule.forFeature(DAFF_CATEGORY_STORE_FEATURE_KEY, DAFF_CATEGORY_REDUCERS),
|
28
|
-
EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects,
|
28
|
+
EffectsModule.forFeature([DaffCategoryEffects, DaffCategoryPageEffects, DaffCategoryPageMetadataEffects]),
|
29
29
|
DaffProductStateModule,
|
30
30
|
],
|
31
31
|
}]
|
32
32
|
}] });
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktc3RhdGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9zdGF0ZS9zcmMvY2F0ZWdvcnktc3RhdGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBRXpFOztHQUVHO0FBUUgsTUFBTSxPQUFPLHVCQUF1QjtpSUFBdkIsdUJBQXVCO2tJQUF2Qix1QkFBdUIsNERBSGhDLHNCQUFzQjtrSUFHYix1QkFBdUIsWUFMaEMsV0FBVyxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsRUFBRSxzQkFBc0IsQ0FBQztZQUMvRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsbUJBQW1CLEVBQUUsdUJBQXVCLEVBQUUsK0JBQStCLENBQUMsQ0FBQztZQUN6RyxzQkFBc0I7OzJGQUdiLHVCQUF1QjtrQkFQbkMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsV0FBVyxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsRUFBRSxzQkFBc0IsQ0FBQzt3QkFDL0UsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLCtCQUErQixDQUFDLENBQUM7d0JBQ3pHLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWZmZWN0c01vZHVsZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbmltcG9ydCB7IERhZmZQcm9kdWN0U3RhdGVNb2R1bGUgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9zdGF0ZSc7XG5cbmltcG9ydCB7IERhZmZDYXRlZ29yeVBhZ2VNZXRhZGF0YUVmZmVjdHMgfSBmcm9tICcuL2VmZmVjdHMvY2F0ZWdvcnktcGFnZS1tZXRhZGF0YS5lZmZlY3RzJztcbmltcG9ydCB7IERhZmZDYXRlZ29yeVBhZ2VFZmZlY3RzIH0gZnJvbSAnLi9lZmZlY3RzL2NhdGVnb3J5LXBhZ2UuZWZmZWN0cyc7XG5pbXBvcnQgeyBEYWZmQ2F0ZWdvcnlFZmZlY3RzIH0gZnJvbSAnLi9lZmZlY3RzL2NhdGVnb3J5LmVmZmVjdHMnO1xuaW1wb3J0IHsgREFGRl9DQVRFR09SWV9TVE9SRV9GRUFUVVJFX0tFWSB9IGZyb20gJy4vcmVkdWNlcnMvcHVibGljX2FwaSc7XG5pbXBvcnQgeyBEQUZGX0NBVEVHT1JZX1JFRFVDRVJTIH0gZnJvbSAnLi9yZWR1Y2Vycy90b2tlbi9yZWR1Y2Vycy50b2tlbic7XG5cbi8qKlxuICogQSBtb2R1bGUgdGhhdCBwcm92aWRlcyBkZWZhdWx0IHJlZHVjZXJzIGFuZCBlZmZlY3RzIGZvciB0aGUgY2F0ZWdvcnkgcmVkdXggc3RhdGUuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKERBRkZfQ0FURUdPUllfU1RPUkVfRkVBVFVSRV9LRVksIERBRkZfQ0FURUdPUllfUkVEVUNFUlMpLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbRGFmZkNhdGVnb3J5RWZmZWN0cywgRGFmZkNhdGVnb3J5UGFnZUVmZmVjdHMsIERhZmZDYXRlZ29yeVBhZ2VNZXRhZGF0YUVmZmVjdHNdKSxcbiAgICBEYWZmUHJvZHVjdFN0YXRlTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEYWZmQ2F0ZWdvcnlTdGF0ZU1vZHVsZSB7fVxuIl19
|
@@ -0,0 +1,55 @@
|
|
1
|
+
import { Injectable, Inject, } from '@angular/core';
|
2
|
+
import { Actions, createEffect, ofType, } from '@ngrx/effects';
|
3
|
+
import { of, asyncScheduler, } from 'rxjs';
|
4
|
+
import { switchMap, catchError, map, throttleTime, withLatestFrom, } from 'rxjs/operators';
|
5
|
+
import { DaffCategoryRequestKind, } from '@daffodil/category';
|
6
|
+
import { DaffCategoryDriver, } from '@daffodil/category/driver';
|
7
|
+
import { daffFiltersToRequests, } from '@daffodil/core';
|
8
|
+
import { DaffProductGridLoadSuccess } from '@daffodil/product/state';
|
9
|
+
import { DaffCategoryPageProductCollectionActionTypes, } from '../actions/category-page-filter.actions';
|
10
|
+
import { DaffCategoryPageLoadSuccess, DaffCategoryPageLoadFailure, } from '../actions/category-page.actions';
|
11
|
+
import { DaffCategoryProductCollectionFacade } from '../facades/public_api';
|
12
|
+
import { DAFF_CATEGORY_ERROR_MATCHER } from '../injection-tokens/public_api';
|
13
|
+
import * as i0 from "@angular/core";
|
14
|
+
import * as i1 from "@ngrx/effects";
|
15
|
+
import * as i2 from "../facades/public_api";
|
16
|
+
export class DaffCategoryPageMetadataEffects {
|
17
|
+
constructor(actions$, driver, errorMatcher, facade) {
|
18
|
+
this.actions$ = actions$;
|
19
|
+
this.driver = driver;
|
20
|
+
this.errorMatcher = errorMatcher;
|
21
|
+
this.facade = facade;
|
22
|
+
/**
|
23
|
+
* Updates the filters applied to the category page. It will take the currently
|
24
|
+
* applied filters from state, form them into a request, and attempt to apply
|
25
|
+
* that request to a backend service.
|
26
|
+
*
|
27
|
+
* @param throttleWindow the amount of time to delay when apply/removing filters
|
28
|
+
* in a sequence.
|
29
|
+
*/
|
30
|
+
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]) => ({
|
31
|
+
kind: DaffCategoryRequestKind.ID,
|
32
|
+
id: metadata.id,
|
33
|
+
filterRequests: daffFiltersToRequests(metadata.filters),
|
34
|
+
appliedSortOption: metadata.appliedSortOption,
|
35
|
+
appliedSortDirection: metadata.appliedSortDirection,
|
36
|
+
currentPage: metadata.currentPage,
|
37
|
+
pageSize: metadata.pageSize,
|
38
|
+
})), throttleTime(throttleWindow, scheduler, { leading: true, trailing: true }), switchMap(payload => this.driver.get(payload).pipe(switchMap((resp) => [
|
39
|
+
new DaffProductGridLoadSuccess(resp.products),
|
40
|
+
new DaffCategoryPageLoadSuccess(resp),
|
41
|
+
]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
|
42
|
+
}
|
43
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageMetadataEffects, deps: [{ token: i1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }, { token: i2.DaffCategoryProductCollectionFacade }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
44
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageMetadataEffects }); }
|
45
|
+
}
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageMetadataEffects, decorators: [{
|
47
|
+
type: Injectable
|
48
|
+
}], ctorParameters: () => [{ type: i1.Actions }, { type: undefined, decorators: [{
|
49
|
+
type: Inject,
|
50
|
+
args: [DaffCategoryDriver]
|
51
|
+
}] }, { type: undefined, decorators: [{
|
52
|
+
type: Inject,
|
53
|
+
args: [DAFF_CATEGORY_ERROR_MATCHER]
|
54
|
+
}] }, { type: i2.DaffCategoryProductCollectionFacade }] });
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktcGFnZS1tZXRhZGF0YS5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9zdGF0ZS9zcmMvZWZmZWN0cy9jYXRlZ29yeS1wYWdlLW1ldGFkYXRhLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLE9BQU8sRUFDUCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxFQUFFLEVBRUYsY0FBYyxHQUNmLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsR0FBRyxFQUNILFlBQVksRUFDWixjQUFjLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBR0wsdUJBQXVCLEdBRXhCLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUNMLGtCQUFrQixHQUVuQixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFFTCxxQkFBcUIsR0FDdEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRSxPQUFPLEVBQ0wsNENBQTRDLEdBRTdDLE1BQU0seUNBQXlDLENBQUM7QUFDakQsT0FBTyxFQUNMLDJCQUEyQixFQUMzQiwyQkFBMkIsR0FDNUIsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQUc3RSxNQUFNLE9BQU8sK0JBQStCO0lBSzFDLFlBQ1UsUUFBaUIsRUFDVyxNQUEwQyxFQUNqQyxZQUE4QixFQUNuRSxNQUEyQztRQUgzQyxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ1csV0FBTSxHQUFOLE1BQU0sQ0FBb0M7UUFDakMsaUJBQVksR0FBWixZQUFZLENBQWtCO1FBQ25FLFdBQU0sR0FBTixNQUFNLENBQXFDO1FBR3JEOzs7Ozs7O1dBT0c7UUFFSCxZQUFPLEdBSUgsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsY0FBYyxHQUFHLEdBQUcsRUFBRSxTQUFTLEdBQUcsY0FBYyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDM0YsTUFBTSxDQUNKLDRDQUE0QyxDQUFDLCtCQUErQixFQUM1RSw0Q0FBNEMsQ0FBQyxnQ0FBZ0MsRUFDN0UsNENBQTRDLENBQUMsOEJBQThCLEVBQzNFLDRDQUE0QyxDQUFDLDhCQUE4QixFQUMzRSw0Q0FBNEMsQ0FBQywrQkFBK0IsRUFDNUUsNENBQTRDLENBQUMsOEJBQThCLEVBQzNFLDRDQUE0QyxDQUFDLDRCQUE0QixFQUN6RSw0Q0FBNEMsQ0FBQyxtQ0FBbUMsRUFDaEYsNENBQTRDLENBQUMscUNBQXFDLENBQ25GLEVBQ0QsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQ3JDLEdBQUcsQ0FBQyxDQUNGLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBdUUsRUFDakUsRUFBRSxDQUFDLENBQUM7WUFDM0IsSUFBSSxFQUFFLHVCQUF1QixDQUFDLEVBQUU7WUFDaEMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFO1lBQ2YsY0FBYyxFQUFFLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFDdkQsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGlCQUFpQjtZQUM3QyxvQkFBb0IsRUFBRSxRQUFRLENBQUMsb0JBQW9CO1lBQ25ELFdBQVcsRUFBRSxRQUFRLENBQUMsV0FBVztZQUNqQyxRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7U0FDNUIsQ0FBQyxDQUFDLEVBQ0gsWUFBWSxDQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUMxRSxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ2hELFNBQVMsQ0FBQyxDQUFDLElBQW1DLEVBQUUsRUFBRSxDQUFDO1lBQ2pELElBQUksMEJBQTBCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM3QyxJQUFJLDJCQUEyQixDQUFDLElBQUksQ0FBQztTQUN0QyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDaEcsQ0FBQyxDQUNILENBQUMsQ0FBQztJQS9DSCxDQUFDO2lJQVZRLCtCQUErQix5Q0FPaEMsa0JBQWtCLGFBQ2xCLDJCQUEyQjtxSUFSMUIsK0JBQStCOzsyRkFBL0IsK0JBQStCO2tCQUQzQyxVQUFVOzswQkFRTixNQUFNOzJCQUFDLGtCQUFrQjs7MEJBQ3pCLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZSxcbiAgSW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGlvbnMsXG4gIGNyZWF0ZUVmZmVjdCxcbiAgb2ZUeXBlLFxufSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7XG4gIG9mLFxuICBPYnNlcnZhYmxlLFxuICBhc3luY1NjaGVkdWxlcixcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBc3luY1NjaGVkdWxlciB9IGZyb20gJ3J4anMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzeW5jU2NoZWR1bGVyJztcbmltcG9ydCB7XG4gIHN3aXRjaE1hcCxcbiAgY2F0Y2hFcnJvcixcbiAgbWFwLFxuICB0aHJvdHRsZVRpbWUsXG4gIHdpdGhMYXRlc3RGcm9tLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIERhZmZHZW5lcmljQ2F0ZWdvcnksXG4gIERhZmZHZXRDYXRlZ29yeVJlc3BvbnNlLFxuICBEYWZmQ2F0ZWdvcnlSZXF1ZXN0S2luZCxcbiAgRGFmZkNhdGVnb3J5SWRSZXF1ZXN0LFxufSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnknO1xuaW1wb3J0IHsgRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhIH0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5JztcbmltcG9ydCB7XG4gIERhZmZDYXRlZ29yeURyaXZlcixcbiAgRGFmZkNhdGVnb3J5U2VydmljZUludGVyZmFjZSxcbn0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5L2RyaXZlcic7XG5pbXBvcnQge1xuICBEYWZmRXJyb3IsXG4gIGRhZmZGaWx0ZXJzVG9SZXF1ZXN0cyxcbn0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuaW1wb3J0IHsgRXJyb3JUcmFuc2Zvcm1lciB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3N0YXRlJztcbmltcG9ydCB7IERhZmZQcm9kdWN0IH0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3QnO1xuaW1wb3J0IHsgRGFmZlByb2R1Y3RHcmlkTG9hZFN1Y2Nlc3MgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9zdGF0ZSc7XG5cbmltcG9ydCB7XG4gIERhZmZDYXRlZ29yeVBhZ2VQcm9kdWN0Q29sbGVjdGlvbkFjdGlvblR5cGVzLFxuICBEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25zLFxufSBmcm9tICcuLi9hY3Rpb25zL2NhdGVnb3J5LXBhZ2UtZmlsdGVyLmFjdGlvbnMnO1xuaW1wb3J0IHtcbiAgRGFmZkNhdGVnb3J5UGFnZUxvYWRTdWNjZXNzLFxuICBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEZhaWx1cmUsXG59IGZyb20gJy4uL2FjdGlvbnMvY2F0ZWdvcnktcGFnZS5hY3Rpb25zJztcbmltcG9ydCB7IERhZmZDYXRlZ29yeVByb2R1Y3RDb2xsZWN0aW9uRmFjYWRlIH0gZnJvbSAnLi4vZmFjYWRlcy9wdWJsaWNfYXBpJztcbmltcG9ydCB7IERBRkZfQ0FURUdPUllfRVJST1JfTUFUQ0hFUiB9IGZyb20gJy4uL2luamVjdGlvbi10b2tlbnMvcHVibGljX2FwaSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGFFZmZlY3RzPFxuICBWIGV4dGVuZHMgRGFmZkdlbmVyaWNDYXRlZ29yeTxWPixcbiAgVyBleHRlbmRzIERhZmZQcm9kdWN0XG4+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIEBJbmplY3QoRGFmZkNhdGVnb3J5RHJpdmVyKSBwcml2YXRlIGRyaXZlcjogRGFmZkNhdGVnb3J5U2VydmljZUludGVyZmFjZTxWLCBXPixcbiAgICBASW5qZWN0KERBRkZfQ0FURUdPUllfRVJST1JfTUFUQ0hFUikgcHJpdmF0ZSBlcnJvck1hdGNoZXI6IEVycm9yVHJhbnNmb3JtZXIsXG4gICAgcHJpdmF0ZSBmYWNhZGU6IERhZmZDYXRlZ29yeVByb2R1Y3RDb2xsZWN0aW9uRmFjYWRlLFxuICApe31cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgZmlsdGVycyBhcHBsaWVkIHRvIHRoZSBjYXRlZ29yeSBwYWdlLiBJdCB3aWxsIHRha2UgdGhlIGN1cnJlbnRseVxuICAgKiBhcHBsaWVkIGZpbHRlcnMgZnJvbSBzdGF0ZSwgZm9ybSB0aGVtIGludG8gYSByZXF1ZXN0LCBhbmQgYXR0ZW1wdCB0byBhcHBseVxuICAgKiB0aGF0IHJlcXVlc3QgdG8gYSBiYWNrZW5kIHNlcnZpY2UuXG4gICAqXG4gICAqIEBwYXJhbSB0aHJvdHRsZVdpbmRvdyB0aGUgYW1vdW50IG9mIHRpbWUgdG8gZGVsYXkgd2hlbiBhcHBseS9yZW1vdmluZyBmaWx0ZXJzXG4gICAqIGluIGEgc2VxdWVuY2UuXG4gICAqL1xuXG4gIHVwZGF0ZSQ6ICh0aHJvdHRsZVdpbmRvdzogbnVtYmVyLCBzY2hlZHVsZXI6IEFzeW5jU2NoZWR1bGVyKSA9PiBPYnNlcnZhYmxlPFxuICBEYWZmUHJvZHVjdEdyaWRMb2FkU3VjY2Vzc1xuICB8IERhZmZDYXRlZ29yeVBhZ2VMb2FkU3VjY2Vzc1xuICB8IERhZmZDYXRlZ29yeVBhZ2VMb2FkRmFpbHVyZVxuICA+ID0gY3JlYXRlRWZmZWN0KCgpID0+ICh0aHJvdHRsZVdpbmRvdyA9IDMwMCwgc2NoZWR1bGVyID0gYXN5bmNTY2hlZHVsZXIpID0+IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShcbiAgICAgICAgRGFmZkNhdGVnb3J5UGFnZVByb2R1Y3RDb2xsZWN0aW9uQWN0aW9uVHlwZXMuQ2F0ZWdvcnlQYWdlQ2hhbmdlRmlsdGVyc0FjdGlvbixcbiAgICAgICAgRGFmZkNhdGVnb3J5UGFnZVByb2R1Y3RDb2xsZWN0aW9uQWN0aW9uVHlwZXMuQ2F0ZWdvcnlQYWdlUmVwbGFjZUZpbHRlcnNBY3Rpb24sXG4gICAgICAgIERhZmZDYXRlZ29yeVBhZ2VQcm9kdWN0Q29sbGVjdGlvbkFjdGlvblR5cGVzLkNhdGVnb3J5UGFnZUFwcGx5RmlsdGVyc0FjdGlvbixcbiAgICAgICAgRGFmZkNhdGVnb3J5UGFnZVByb2R1Y3RDb2xsZWN0aW9uQWN0aW9uVHlwZXMuQ2F0ZWdvcnlQYWdlQ2xlYXJGaWx0ZXJzQWN0aW9uLFxuICAgICAgICBEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VSZW1vdmVGaWx0ZXJzQWN0aW9uLFxuICAgICAgICBEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VUb2dnbGVGaWx0ZXJBY3Rpb24sXG4gICAgICAgIERhZmZDYXRlZ29yeVBhZ2VQcm9kdWN0Q29sbGVjdGlvbkFjdGlvblR5cGVzLkNhdGVnb3J5UGFnZUNoYW5nZVNpemVBY3Rpb24sXG4gICAgICAgIERhZmZDYXRlZ29yeVBhZ2VQcm9kdWN0Q29sbGVjdGlvbkFjdGlvblR5cGVzLkNhdGVnb3J5UGFnZUNoYW5nZUN1cnJlbnRQYWdlQWN0aW9uLFxuICAgICAgICBEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VDaGFuZ2VTb3J0aW5nT3B0aW9uQWN0aW9uLFxuICAgICAgKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuZmFjYWRlLm1ldGFkYXRhJCksXG4gICAgICBtYXAoKFxuICAgICAgICBbYWN0aW9uLCBtZXRhZGF0YV06IFtEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25zLCBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGFdLFxuICAgICAgKTogRGFmZkNhdGVnb3J5SWRSZXF1ZXN0ID0+ICh7XG4gICAgICAgIGtpbmQ6IERhZmZDYXRlZ29yeVJlcXVlc3RLaW5kLklELFxuICAgICAgICBpZDogbWV0YWRhdGEuaWQsXG4gICAgICAgIGZpbHRlclJlcXVlc3RzOiBkYWZmRmlsdGVyc1RvUmVxdWVzdHMobWV0YWRhdGEuZmlsdGVycyksXG4gICAgICAgIGFwcGxpZWRTb3J0T3B0aW9uOiBtZXRhZGF0YS5hcHBsaWVkU29ydE9wdGlvbixcbiAgICAgICAgYXBwbGllZFNvcnREaXJlY3Rpb246IG1ldGFkYXRhLmFwcGxpZWRTb3J0RGlyZWN0aW9uLFxuICAgICAgICBjdXJyZW50UGFnZTogbWV0YWRhdGEuY3VycmVudFBhZ2UsXG4gICAgICAgIHBhZ2VTaXplOiBtZXRhZGF0YS5wYWdlU2l6ZSxcbiAgICAgIH0pKSxcbiAgICAgIHRocm90dGxlVGltZSh0aHJvdHRsZVdpbmRvdywgc2NoZWR1bGVyLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgc3dpdGNoTWFwKHBheWxvYWQgPT4gdGhpcy5kcml2ZXIuZ2V0KHBheWxvYWQpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgocmVzcDogRGFmZkdldENhdGVnb3J5UmVzcG9uc2U8ViwgVz4pID0+IFtcbiAgICAgICAgICBuZXcgRGFmZlByb2R1Y3RHcmlkTG9hZFN1Y2Nlc3MocmVzcC5wcm9kdWN0cyksXG4gICAgICAgICAgbmV3IERhZmZDYXRlZ29yeVBhZ2VMb2FkU3VjY2VzcyhyZXNwKSxcbiAgICAgICAgXSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBEYWZmRXJyb3IpID0+IG9mKG5ldyBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEZhaWx1cmUodGhpcy5lcnJvck1hdGNoZXIoZXJyb3IpKSkpLFxuICAgICAgKSksXG4gICAgKSk7XG59XG4iXX0=
|
@@ -1,58 +1,28 @@
|
|
1
1
|
import { Injectable, Inject, } from '@angular/core';
|
2
2
|
import { Actions, createEffect, ofType, } from '@ngrx/effects';
|
3
|
-
import { Store, select, } from '@ngrx/store';
|
4
3
|
import { of, } from 'rxjs';
|
5
|
-
import { switchMap, catchError,
|
6
|
-
import { DaffCategoryRequestKind, } from '@daffodil/category';
|
4
|
+
import { switchMap, catchError, } from 'rxjs/operators';
|
7
5
|
import { DaffCategoryDriver, } from '@daffodil/category/driver';
|
8
|
-
import { daffFiltersToRequests, } from '@daffodil/core';
|
9
6
|
import { DaffProductGridLoadSuccess } from '@daffodil/product/state';
|
10
|
-
import { DaffCategoryPageProductCollectionActionTypes, } from '../actions/category-page-filter.actions';
|
11
7
|
import { DaffCategoryPageLoadSuccess, DaffCategoryPageLoadFailure, DaffCategoryPageActionTypes, } from '../actions/category-page.actions';
|
12
8
|
import { DAFF_CATEGORY_ERROR_MATCHER } from '../injection-tokens/public_api';
|
13
|
-
import { getDaffCategorySelectors } from '../selectors/category.selector';
|
14
9
|
import * as i0 from "@angular/core";
|
15
10
|
import * as i1 from "@ngrx/effects";
|
16
|
-
import * as i2 from "@ngrx/store";
|
17
11
|
export class DaffCategoryPageEffects {
|
18
|
-
constructor(actions$, driver, errorMatcher
|
12
|
+
constructor(actions$, driver, errorMatcher) {
|
19
13
|
this.actions$ = actions$;
|
20
14
|
this.driver = driver;
|
21
15
|
this.errorMatcher = errorMatcher;
|
22
|
-
this.
|
23
|
-
this.categorySelectors = getDaffCategorySelectors();
|
24
|
-
this.loadCategoryPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadAction), switchMap((action) => this.processCategoryGetRequest(action.request))));
|
25
|
-
this.loadCategoryPageByUrl$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadByUrlAction), switchMap((action) => this.driver.getByUrl(action.request).pipe(switchMap((resp) => [
|
16
|
+
this.loadCategoryPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadAction), switchMap((action) => this.driver.get(action.request).pipe(switchMap((resp) => [
|
26
17
|
new DaffProductGridLoadSuccess(resp.products),
|
27
18
|
new DaffCategoryPageLoadSuccess(resp),
|
28
19
|
]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
|
29
|
-
this.
|
30
|
-
...metadata,
|
31
|
-
kind: DaffCategoryRequestKind.ID,
|
32
|
-
filterRequests: daffFiltersToRequests(metadata.filters),
|
33
|
-
pageSize: action.pageSize,
|
34
|
-
}))));
|
35
|
-
this.changeCategoryCurrentPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
|
36
|
-
...metadata,
|
37
|
-
kind: DaffCategoryRequestKind.ID,
|
38
|
-
filterRequests: daffFiltersToRequests(metadata.filters),
|
39
|
-
currentPage: action.currentPage,
|
40
|
-
}))));
|
41
|
-
this.changeCategorySort$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
|
42
|
-
...metadata,
|
43
|
-
kind: DaffCategoryRequestKind.ID,
|
44
|
-
filterRequests: daffFiltersToRequests(metadata.filters),
|
45
|
-
appliedSortOption: action.sort.option,
|
46
|
-
appliedSortDirection: action.sort.direction,
|
47
|
-
}))));
|
48
|
-
}
|
49
|
-
processCategoryGetRequest(payload) {
|
50
|
-
return this.driver.get(payload).pipe(switchMap((resp) => [
|
20
|
+
this.loadCategoryPageByUrl$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadByUrlAction), switchMap((action) => this.driver.getByUrl(action.request).pipe(switchMap((resp) => [
|
51
21
|
new DaffProductGridLoadSuccess(resp.products),
|
52
22
|
new DaffCategoryPageLoadSuccess(resp),
|
53
|
-
]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error)))));
|
23
|
+
]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
|
54
24
|
}
|
55
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects, deps: [{ token: i1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }
|
25
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects, deps: [{ token: i1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
56
26
|
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects }); }
|
57
27
|
}
|
58
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryPageEffects, decorators: [{
|
@@ -63,5 +33,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
|
|
63
33
|
}] }, { type: undefined, decorators: [{
|
64
34
|
type: Inject,
|
65
35
|
args: [DAFF_CATEGORY_ERROR_MATCHER]
|
66
|
-
}] }
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktcGFnZS5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9zdGF0ZS9zcmMvZWZmZWN0cy9jYXRlZ29yeS1wYWdlLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLE9BQU8sRUFDUCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxLQUFLLEVBQ0wsTUFBTSxHQUNQLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFDTCxFQUFFLEdBRUgsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixjQUFjLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBR0wsdUJBQXVCLEdBR3hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLGtCQUFrQixHQUVuQixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFFTCxxQkFBcUIsR0FDdEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRSxPQUFPLEVBSUwsNENBQTRDLEdBQzdDLE1BQU0seUNBQXlDLENBQUM7QUFDakQsT0FBTyxFQUNMLDJCQUEyQixFQUUzQiwyQkFBMkIsRUFDM0IsMkJBQTJCLEdBRTVCLE1BQU0sa0NBQWtDLENBQUM7QUFDMUMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFHMUUsTUFBTSxPQUFPLHVCQUF1QjtJQUlsQyxZQUNVLFFBQWlCLEVBQ1csTUFBMEMsRUFDakMsWUFBOEIsRUFDbkUs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QUMsa0JBQWtCOzswQkFDekIsTUFBTTsyQkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlLFxuICBJbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWN0aW9ucyxcbiAgY3JlYXRlRWZmZWN0LFxuICBvZlR5cGUsXG59IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHtcbiAgU3RvcmUsXG4gIHNlbGVjdCxcbn0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgb2YsXG4gIE9ic2VydmFibGUsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgc3dpdGNoTWFwLFxuICBjYXRjaEVycm9yLFxuICB3aXRoTGF0ZXN0RnJvbSxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBEYWZmR2VuZXJpY0NhdGVnb3J5LFxuICBEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZSxcbiAgRGFmZkNhdGVnb3J5UmVxdWVzdEtpbmQsXG4gIERhZmZDYXRlZ29yeUlkUmVxdWVzdCxcbiAgRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhLFxufSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnknO1xuaW1wb3J0IHtcbiAgRGFmZkNhdGVnb3J5RHJpdmVyLFxuICBEYWZmQ2F0ZWdvcnlTZXJ2aWNlSW50ZXJmYWNlLFxufSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnkvZHJpdmVyJztcbmltcG9ydCB7XG4gIERhZmZFcnJvcixcbiAgZGFmZkZpbHRlcnNUb1JlcXVlc3RzLFxufSBmcm9tICdAZGFmZm9kaWwvY29yZSc7XG5pbXBvcnQgeyBFcnJvclRyYW5zZm9ybWVyIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUvc3RhdGUnO1xuaW1wb3J0IHsgRGFmZlByb2R1Y3QgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdCc7XG5pbXBvcnQgeyBEYWZmUHJvZHVjdEdyaWRMb2FkU3VjY2VzcyB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0L3N0YXRlJztcblxuaW1wb3J0IHtcbiAgRGFmZkNhdGVnb3J5UGFnZUNoYW5nZUN1cnJlbnRQYWdlLFxuICBEYWZmQ2F0ZWdvcnlQYWdlQ2hhbmdlUGFnZVNpemUsXG4gIERhZmZDYXRlZ29yeVBhZ2VDaGFuZ2VTb3J0aW5nT3B0aW9uLFxuICBEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25UeXBlcyxcbn0gZnJvbSAnLi4vYWN0aW9ucy9jYXRlZ29yeS1wYWdlLWZpbHRlci5hY3Rpb25zJztcbmltcG9ydCB7XG4gIERhZmZDYXRlZ29yeVBhZ2VMb2FkU3VjY2VzcyxcbiAgRGFmZkNhdGVnb3J5UGFnZUxvYWQsXG4gIERhZmZDYXRlZ29yeVBhZ2VMb2FkRmFpbHVyZSxcbiAgRGFmZkNhdGVnb3J5UGFnZUFjdGlvblR5cGVzLFxuICBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEJ5VXJsLFxufSBmcm9tICcuLi9hY3Rpb25zL2NhdGVnb3J5LXBhZ2UuYWN0aW9ucyc7XG5pbXBvcnQgeyBEQUZGX0NBVEVHT1JZX0VSUk9SX01BVENIRVIgfSBmcm9tICcuLi9pbmplY3Rpb24tdG9rZW5zL3B1YmxpY19hcGknO1xuaW1wb3J0IHsgZ2V0RGFmZkNhdGVnb3J5U2VsZWN0b3JzIH0gZnJvbSAnLi4vc2VsZWN0b3JzL2NhdGVnb3J5LnNlbGVjdG9yJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERhZmZDYXRlZ29yeVBhZ2VFZmZlY3RzPFxuICBWIGV4dGVuZHMgRGFmZkdlbmVyaWNDYXRlZ29yeTxWPixcbiAgVyBleHRlbmRzIERhZmZQcm9kdWN0XG4+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICBASW5qZWN0KERhZmZDYXRlZ29yeURyaXZlcikgcHJpdmF0ZSBkcml2ZXI6IERhZmZDYXRlZ29yeVNlcnZpY2VJbnRlcmZhY2U8ViwgVz4sXG4gICAgQEluamVjdChEQUZGX0NBVEVHT1JZX0VSUk9SX01BVENIRVIpIHByaXZhdGUgZXJyb3JNYXRjaGVyOiBFcnJvclRyYW5zZm9ybWVyLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICkge31cblxuICBwcml2YXRlIGNhdGVnb3J5U2VsZWN0b3JzID0gZ2V0RGFmZkNhdGVnb3J5U2VsZWN0b3JzPFYsIFc+KCk7XG5cbiAgbG9hZENhdGVnb3J5UGFnZSQ6IE9ic2VydmFibGU8YW55PiA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKERhZmZDYXRlZ29yeVBhZ2VBY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VMb2FkQWN0aW9uKSxcbiAgICBzd2l0Y2hNYXAoKGFjdGlvbjogRGFmZkNhdGVnb3J5UGFnZUxvYWQpID0+IHRoaXMucHJvY2Vzc0NhdGVnb3J5R2V0UmVxdWVzdChhY3Rpb24ucmVxdWVzdCkpLFxuICApKTtcblxuXG4gIGxvYWRDYXRlZ29yeVBhZ2VCeVVybCQ6IE9ic2VydmFibGU8YW55PiA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKERhZmZDYXRlZ29yeVBhZ2VBY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VMb2FkQnlVcmxBY3Rpb24pLFxuICAgIHN3aXRjaE1hcCgoYWN0aW9uOiBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEJ5VXJsKSA9PiB0aGlzLmRyaXZlci5nZXRCeVVybChhY3Rpb24ucmVxdWVzdCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVzcDogRGFmZkdldENhdGVnb3J5UmVzcG9uc2U8ViwgVz4pID0+IFtcbiAgICAgICAgbmV3IERhZmZQcm9kdWN0R3JpZExvYWRTdWNjZXNzKHJlc3AucHJvZHVjdHMpLFxuICAgICAgICBuZXcgRGFmZkNhdGVnb3J5UGFnZUxvYWRTdWNjZXNzKHJlc3ApLFxuICAgICAgXSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRGFmZkVycm9yKSA9PiBvZihuZXcgRGFmZkNhdGVnb3J5UGFnZUxvYWRGYWlsdXJlKHRoaXMuZXJyb3JNYXRjaGVyKGVycm9yKSkpKSxcbiAgICApKSxcbiAgKSk7XG5cblxuICBjaGFuZ2VDYXRlZ29yeVBhZ2VTaXplJDogT2JzZXJ2YWJsZTxhbnk+ID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICBvZlR5cGUoRGFmZkNhdGVnb3J5UGFnZVByb2R1Y3RDb2xsZWN0aW9uQWN0aW9uVHlwZXMuQ2F0ZWdvcnlQYWdlQ2hhbmdlU2l6ZUFjdGlvbiksXG4gICAgd2l0aExhdGVzdEZyb20oXG4gICAgICB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0Q29sbGVjdGlvbk1ldGFkYXRhKSksXG4gICAgKSxcbiAgICBzd2l0Y2hNYXAoKFthY3Rpb24sIG1ldGFkYXRhXTogW0RhZmZDYXRlZ29yeVBhZ2VDaGFuZ2VQYWdlU2l6ZSwgRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhXSkgPT4gdGhpcy5wcm9jZXNzQ2F0ZWdvcnlHZXRSZXF1ZXN0KHtcbiAgICAgIC4uLm1ldGFkYXRhLFxuICAgICAga2luZDogRGFmZkNhdGVnb3J5UmVxdWVzdEtpbmQuSUQsXG4gICAgICBmaWx0ZXJSZXF1ZXN0czogZGFmZkZpbHRlcnNUb1JlcXVlc3RzKG1ldGFkYXRhLmZpbHRlcnMpLFxuICAgICAgcGFnZVNpemU6IGFjdGlvbi5wYWdlU2l6ZSxcbiAgICB9KSksXG4gICkpO1xuXG5cbiAgY2hhbmdlQ2F0ZWdvcnlDdXJyZW50UGFnZSQ6IE9ic2VydmFibGU8YW55PiA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKERhZmZDYXRlZ29yeVBhZ2VQcm9kdWN0Q29sbGVjdGlvbkFjdGlvblR5cGVzLkNhdGVnb3J5UGFnZUNoYW5nZUN1cnJlbnRQYWdlQWN0aW9uKSxcbiAgICB3aXRoTGF0ZXN0RnJvbShcbiAgICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5jYXRlZ29yeVNlbGVjdG9ycy5zZWxlY3RDb2xsZWN0aW9uTWV0YWRhdGEpKSxcbiAgICApLFxuICAgIHN3aXRjaE1hcCgoW2FjdGlvbiwgbWV0YWRhdGFdOiBbRGFmZkNhdGVnb3J5UGFnZUNoYW5nZUN1cnJlbnRQYWdlLCBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGFdKSA9PiB0aGlzLnByb2Nlc3NDYXRlZ29yeUdldFJlcXVlc3Qoe1xuICAgICAgLi4ubWV0YWRhdGEsXG4gICAgICBraW5kOiBEYWZmQ2F0ZWdvcnlSZXF1ZXN0S2luZC5JRCxcbiAgICAgIGZpbHRlclJlcXVlc3RzOiBkYWZmRmlsdGVyc1RvUmVxdWVzdHMobWV0YWRhdGEuZmlsdGVycyksXG4gICAgICBjdXJyZW50UGFnZTogYWN0aW9uLmN1cnJlbnRQYWdlLFxuICAgIH0pKSxcbiAgKSk7XG5cblxuICBjaGFuZ2VDYXRlZ29yeVNvcnQkOiBPYnNlcnZhYmxlPGFueT4gPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgIG9mVHlwZShEYWZmQ2F0ZWdvcnlQYWdlUHJvZHVjdENvbGxlY3Rpb25BY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VDaGFuZ2VTb3J0aW5nT3B0aW9uQWN0aW9uKSxcbiAgICB3aXRoTGF0ZXN0RnJvbShcbiAgICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5jYXRlZ29yeVNlbGVjdG9ycy5zZWxlY3RDb2xsZWN0aW9uTWV0YWRhdGEpKSxcbiAgICApLFxuICAgIHN3aXRjaE1hcCgoW2FjdGlvbiwgbWV0YWRhdGFdOiBbRGFmZkNhdGVnb3J5UGFnZUNoYW5nZVNvcnRpbmdPcHRpb24sIERhZmZDYXRlZ29yeVBhZ2VNZXRhZGF0YV0pID0+IHRoaXMucHJvY2Vzc0NhdGVnb3J5R2V0UmVxdWVzdCh7XG4gICAgICAuLi5tZXRhZGF0YSxcbiAgICAgIGtpbmQ6IERhZmZDYXRlZ29yeVJlcXVlc3RLaW5kLklELFxuICAgICAgZmlsdGVyUmVxdWVzdHM6IGRhZmZGaWx0ZXJzVG9SZXF1ZXN0cyhtZXRhZGF0YS5maWx0ZXJzKSxcbiAgICAgIGFwcGxpZWRTb3J0T3B0aW9uOiBhY3Rpb24uc29ydC5vcHRpb24sXG4gICAgICBhcHBsaWVkU29ydERpcmVjdGlvbjogYWN0aW9uLnNvcnQuZGlyZWN0aW9uLFxuICAgIH0pKSxcbiAgKSk7XG5cbiAgcHJpdmF0ZSBwcm9jZXNzQ2F0ZWdvcnlHZXRSZXF1ZXN0KHBheWxvYWQ6IERhZmZDYXRlZ29yeUlkUmVxdWVzdCkge1xuICAgIHJldHVybiB0aGlzLmRyaXZlci5nZXQocGF5bG9hZCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVzcDogRGFmZkdldENhdGVnb3J5UmVzcG9uc2U8ViwgVz4pID0+IFtcbiAgICAgICAgbmV3IERhZmZQcm9kdWN0R3JpZExvYWRTdWNjZXNzKHJlc3AucHJvZHVjdHMpLFxuICAgICAgICBuZXcgRGFmZkNhdGVnb3J5UGFnZUxvYWRTdWNjZXNzKHJlc3ApLFxuICAgICAgXSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRGFmZkVycm9yKSA9PiBvZihuZXcgRGFmZkNhdGVnb3J5UGFnZUxvYWRGYWlsdXJlKHRoaXMuZXJyb3JNYXRjaGVyKGVycm9yKSkpKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
36
|
+
}] }] });
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktcGFnZS5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9zdGF0ZS9zcmMvZWZmZWN0cy9jYXRlZ29yeS1wYWdlLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLE9BQU8sRUFDUCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxFQUFFLEdBRUgsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBTXhCLE9BQU8sRUFDTCxrQkFBa0IsR0FFbkIsTUFBTSwyQkFBMkIsQ0FBQztBQUluQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRSxPQUFPLEVBQ0wsMkJBQTJCLEVBRTNCLDJCQUEyQixFQUMzQiwyQkFBMkIsR0FFNUIsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBRzdFLE1BQU0sT0FBTyx1QkFBdUI7SUFJbEMsWUFDVSxRQUFpQixFQUNXLE1BQTBDLEVBQ2pDLFlBQThCO1FBRm5FLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDVyxXQUFNLEdBQU4sTUFBTSxDQUFvQztRQUNqQyxpQkFBWSxHQUFaLFlBQVksQ0FBa0I7UUFHN0Usc0JBQWlCLEdBQW9CLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDeEUsTUFBTSxDQUFDLDJCQUEyQixDQUFDLHNCQUFzQixDQUFDLEVBQzFELFNBQVMsQ0FBQyxDQUFDLE1BQTRCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzlFLFNBQVMsQ0FBQyxDQUFDLElBQW1DLEVBQUUsRUFBRSxDQUFDO1lBQ2pELElBQUksMEJBQTBCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM3QyxJQUFJLDJCQUEyQixDQUFDLElBQUksQ0FBQztTQUN0QyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDaEcsQ0FBQyxDQUNILENBQUMsQ0FBQztRQUdILDJCQUFzQixHQUFvQixZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQzdFLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQywyQkFBMkIsQ0FBQyxFQUMvRCxTQUFTLENBQUMsQ0FBQyxNQUFpQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUN4RixTQUFTLENBQUMsQ0FBQyxJQUFtQyxFQUFFLEVBQUUsQ0FBQztZQUNqRCxJQUFJLDBCQUEwQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDN0MsSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUM7U0FDdEMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLDJCQUEyQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2hHLENBQUMsQ0FDSCxDQUFDLENBQUM7SUF2QkEsQ0FBQztpSUFSTyx1QkFBdUIseUNBTXhCLGtCQUFrQixhQUNsQiwyQkFBMkI7cUlBUDFCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVTs7MEJBT04sTUFBTTsyQkFBQyxrQkFBa0I7OzBCQUN6QixNQUFNOzJCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGUsXG4gIEluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3Rpb25zLFxuICBjcmVhdGVFZmZlY3QsXG4gIG9mVHlwZSxcbn0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQge1xuICBvZixcbiAgT2JzZXJ2YWJsZSxcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBzd2l0Y2hNYXAsXG4gIGNhdGNoRXJyb3IsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgRGFmZkdlbmVyaWNDYXRlZ29yeSxcbiAgRGFmZkdldENhdGVnb3J5UmVzcG9uc2UsXG59IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeSc7XG5pbXBvcnQge1xuICBEYWZmQ2F0ZWdvcnlEcml2ZXIsXG4gIERhZmZDYXRlZ29yeVNlcnZpY2VJbnRlcmZhY2UsXG59IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeS9kcml2ZXInO1xuaW1wb3J0IHsgRGFmZkVycm9yIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuaW1wb3J0IHsgRXJyb3JUcmFuc2Zvcm1lciB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3N0YXRlJztcbmltcG9ydCB7IERhZmZQcm9kdWN0IH0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3QnO1xuaW1wb3J0IHsgRGFmZlByb2R1Y3RHcmlkTG9hZFN1Y2Nlc3MgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9zdGF0ZSc7XG5cbmltcG9ydCB7XG4gIERhZmZDYXRlZ29yeVBhZ2VMb2FkU3VjY2VzcyxcbiAgRGFmZkNhdGVnb3J5UGFnZUxvYWQsXG4gIERhZmZDYXRlZ29yeVBhZ2VMb2FkRmFpbHVyZSxcbiAgRGFmZkNhdGVnb3J5UGFnZUFjdGlvblR5cGVzLFxuICBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEJ5VXJsLFxufSBmcm9tICcuLi9hY3Rpb25zL2NhdGVnb3J5LXBhZ2UuYWN0aW9ucyc7XG5pbXBvcnQgeyBEQUZGX0NBVEVHT1JZX0VSUk9SX01BVENIRVIgfSBmcm9tICcuLi9pbmplY3Rpb24tdG9rZW5zL3B1YmxpY19hcGknO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGFmZkNhdGVnb3J5UGFnZUVmZmVjdHM8XG4gIFYgZXh0ZW5kcyBEYWZmR2VuZXJpY0NhdGVnb3J5PFY+LFxuICBXIGV4dGVuZHMgRGFmZlByb2R1Y3Rcbj4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIEBJbmplY3QoRGFmZkNhdGVnb3J5RHJpdmVyKSBwcml2YXRlIGRyaXZlcjogRGFmZkNhdGVnb3J5U2VydmljZUludGVyZmFjZTxWLCBXPixcbiAgICBASW5qZWN0KERBRkZfQ0FURUdPUllfRVJST1JfTUFUQ0hFUikgcHJpdmF0ZSBlcnJvck1hdGNoZXI6IEVycm9yVHJhbnNmb3JtZXIsXG4gICkge31cblxuICBsb2FkQ2F0ZWdvcnlQYWdlJDogT2JzZXJ2YWJsZTxhbnk+ID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICBvZlR5cGUoRGFmZkNhdGVnb3J5UGFnZUFjdGlvblR5cGVzLkNhdGVnb3J5UGFnZUxvYWRBY3Rpb24pLFxuICAgIHN3aXRjaE1hcCgoYWN0aW9uOiBEYWZmQ2F0ZWdvcnlQYWdlTG9hZCkgPT4gdGhpcy5kcml2ZXIuZ2V0KGFjdGlvbi5yZXF1ZXN0KS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChyZXNwOiBEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZTxWLCBXPikgPT4gW1xuICAgICAgICBuZXcgRGFmZlByb2R1Y3RHcmlkTG9hZFN1Y2Nlc3MocmVzcC5wcm9kdWN0cyksXG4gICAgICAgIG5ldyBEYWZmQ2F0ZWdvcnlQYWdlTG9hZFN1Y2Nlc3MocmVzcCksXG4gICAgICBdKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBEYWZmRXJyb3IpID0+IG9mKG5ldyBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEZhaWx1cmUodGhpcy5lcnJvck1hdGNoZXIoZXJyb3IpKSkpLFxuICAgICkpLFxuICApKTtcblxuXG4gIGxvYWRDYXRlZ29yeVBhZ2VCeVVybCQ6IE9ic2VydmFibGU8YW55PiA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKERhZmZDYXRlZ29yeVBhZ2VBY3Rpb25UeXBlcy5DYXRlZ29yeVBhZ2VMb2FkQnlVcmxBY3Rpb24pLFxuICAgIHN3aXRjaE1hcCgoYWN0aW9uOiBEYWZmQ2F0ZWdvcnlQYWdlTG9hZEJ5VXJsKSA9PiB0aGlzLmRyaXZlci5nZXRCeVVybChhY3Rpb24ucmVxdWVzdCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVzcDogRGFmZkdldENhdGVnb3J5UmVzcG9uc2U8ViwgVz4pID0+IFtcbiAgICAgICAgbmV3IERhZmZQcm9kdWN0R3JpZExvYWRTdWNjZXNzKHJlc3AucHJvZHVjdHMpLFxuICAgICAgICBuZXcgRGFmZkNhdGVnb3J5UGFnZUxvYWRTdWNjZXNzKHJlc3ApLFxuICAgICAgXSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRGFmZkVycm9yKSA9PiBvZihuZXcgRGFmZkNhdGVnb3J5UGFnZUxvYWRGYWlsdXJlKHRoaXMuZXJyb3JNYXRjaGVyKGVycm9yKSkpKSxcbiAgICApKSxcbiAgKSk7XG59XG4iXX0=
|
@@ -1,8 +1,13 @@
|
|
1
|
-
import {
|
1
|
+
import { createSingleInjectionToken } from '@daffodil/core';
|
2
2
|
import { daffTransformErrorToStateError } from '@daffodil/core/state';
|
3
|
+
export const {
|
3
4
|
/**
|
4
5
|
* Transforms `DaffError`s into `DaffStateError`s before they are serialized into state.
|
5
6
|
* Can be used to further refine Daffodil errors into more specific app errors.
|
6
7
|
*/
|
7
|
-
|
8
|
-
|
8
|
+
token: DAFF_CATEGORY_ERROR_MATCHER,
|
9
|
+
/**
|
10
|
+
* Provider function for {@link DAFF_CATEGORY_ERROR_MATCHER}.
|
11
|
+
*/
|
12
|
+
provider: provideDaffCategoryErrorMatcher, } = createSingleInjectionToken('DAFF_CATEGORY_ERROR_MATCHER', { factory: () => daffTransformErrorToStateError });
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItbWF0Y2hlci50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvc3RhdGUvc3JjL2luamVjdGlvbi10b2tlbnMvZXJyb3ItbWF0Y2hlci50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV0RSxNQUFNLENBQUMsTUFBTTtBQUNYOzs7R0FHRztBQUNILEtBQUssRUFBRSwyQkFBMkI7QUFDbEM7O0dBRUc7QUFDSCxRQUFRLEVBQUUsK0JBQStCLEdBQzFDLEdBQUcsMEJBQTBCLENBQzVCLDZCQUE2QixFQUM3QixFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyw4QkFBOEIsRUFBRSxDQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlU2luZ2xlSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAZGFmZm9kaWwvY29yZSc7XG5pbXBvcnQgeyBkYWZmVHJhbnNmb3JtRXJyb3JUb1N0YXRlRXJyb3IgfSBmcm9tICdAZGFmZm9kaWwvY29yZS9zdGF0ZSc7XG5cbmV4cG9ydCBjb25zdCB7XG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIGBEYWZmRXJyb3JgcyBpbnRvIGBEYWZmU3RhdGVFcnJvcmBzIGJlZm9yZSB0aGV5IGFyZSBzZXJpYWxpemVkIGludG8gc3RhdGUuXG4gICAqIENhbiBiZSB1c2VkIHRvIGZ1cnRoZXIgcmVmaW5lIERhZmZvZGlsIGVycm9ycyBpbnRvIG1vcmUgc3BlY2lmaWMgYXBwIGVycm9ycy5cbiAgICovXG4gIHRva2VuOiBEQUZGX0NBVEVHT1JZX0VSUk9SX01BVENIRVIsXG4gIC8qKlxuICAgKiBQcm92aWRlciBmdW5jdGlvbiBmb3Ige0BsaW5rIERBRkZfQ0FURUdPUllfRVJST1JfTUFUQ0hFUn0uXG4gICAqL1xuICBwcm92aWRlcjogcHJvdmlkZURhZmZDYXRlZ29yeUVycm9yTWF0Y2hlcixcbn0gPSBjcmVhdGVTaW5nbGVJbmplY3Rpb25Ub2tlbjx0eXBlb2YgZGFmZlRyYW5zZm9ybUVycm9yVG9TdGF0ZUVycm9yPihcbiAgJ0RBRkZfQ0FURUdPUllfRVJST1JfTUFUQ0hFUicsXG4gIHsgZmFjdG9yeTogKCkgPT4gZGFmZlRyYW5zZm9ybUVycm9yVG9TdGF0ZUVycm9yIH0sXG4pO1xuIl19
|
@@ -1,2 +1,2 @@
|
|
1
|
-
export
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
1
|
+
export * from './error-matcher.token';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvc3RhdGUvc3JjL2luamVjdGlvbi10b2tlbnMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lcnJvci1tYXRjaGVyLnRva2VuJztcbiJdfQ==
|
@@ -1,13 +1,11 @@
|
|
1
|
-
import {
|
1
|
+
import { createMultiInjectionToken } from '@daffodil/core';
|
2
|
+
export const {
|
2
3
|
/**
|
3
4
|
* A token to hold the injectable extra reducers.
|
4
5
|
*
|
5
6
|
* Prefer using {@link daffCategoryProvideExtraReducers}.
|
6
7
|
*/
|
7
|
-
|
8
|
-
factory: () => [],
|
9
|
-
providedIn: 'any',
|
10
|
-
});
|
8
|
+
token: DAFF_CATEGORY_EXTRA_REDUCERS,
|
11
9
|
/**
|
12
10
|
* Provides additional reducers that run after the standard Daffodil category reducers.
|
13
11
|
*
|
@@ -20,11 +18,5 @@ export const DAFF_CATEGORY_EXTRA_REDUCERS = new InjectionToken('DAFF_CATEGORY_EX
|
|
20
18
|
* ]
|
21
19
|
* ```
|
22
20
|
*/
|
23
|
-
|
24
|
-
|
25
|
-
provide: DAFF_CATEGORY_EXTRA_REDUCERS,
|
26
|
-
useValue: reducer,
|
27
|
-
multi: true,
|
28
|
-
}));
|
29
|
-
}
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmEudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NhdGVnb3J5L3N0YXRlL3NyYy9yZWR1Y2Vycy90b2tlbi9leHRyYS50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsY0FBYyxHQUVmLE1BQU0sZUFBZSxDQUFDO0FBS3ZCOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FDNUQsOEJBQThCLEVBQzlCO0lBQ0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUU7SUFDakIsVUFBVSxFQUFFLEtBQUs7Q0FDbEIsQ0FDRixDQUFDO0FBRUY7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLFVBQVUsZ0NBQWdDLENBQzlDLEdBQUcsUUFBb0Q7SUFFdkQsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixPQUFPLEVBQUUsNEJBQTRCO1FBQ3JDLFFBQVEsRUFBRSxPQUFPO1FBQ2pCLEtBQUssRUFBRSxJQUFJO0tBQ1osQ0FBQyxDQUFDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIFByb3ZpZGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvblJlZHVjZXIgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbmltcG9ydCB7IERhZmZDYXRlZ29yeVJlZHVjZXJzU3RhdGUgfSBmcm9tICcuLi9jYXRlZ29yeS1yZWR1Y2Vycy5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEEgdG9rZW4gdG8gaG9sZCB0aGUgaW5qZWN0YWJsZSBleHRyYSByZWR1Y2Vycy5cbiAqXG4gKiBQcmVmZXIgdXNpbmcge0BsaW5rIGRhZmZDYXRlZ29yeVByb3ZpZGVFeHRyYVJlZHVjZXJzfS5cbiAqL1xuZXhwb3J0IGNvbnN0IERBRkZfQ0FURUdPUllfRVhUUkFfUkVEVUNFUlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48QWN0aW9uUmVkdWNlcjxEYWZmQ2F0ZWdvcnlSZWR1Y2Vyc1N0YXRlPltdPihcbiAgJ0RBRkZfQ0FURUdPUllfRVhUUkFfUkVEVUNFUlMnLFxuICB7XG4gICAgZmFjdG9yeTogKCkgPT4gW10sXG4gICAgcHJvdmlkZWRJbjogJ2FueScsXG4gIH0sXG4pO1xuXG4vKipcbiAqIFByb3ZpZGVzIGFkZGl0aW9uYWwgcmVkdWNlcnMgdGhhdCBydW4gYWZ0ZXIgdGhlIHN0YW5kYXJkIERhZmZvZGlsIGNhdGVnb3J5IHJlZHVjZXJzLlxuICpcbiAqIGBgYHRzXG4gKiBwcm92aWRlcnM6IFtcbiAqICAgLi4uZGFmZkNhdGVnb3J5UHJvdmlkZUV4dHJhUmVkdWNlcnMoXG4gKiAgICAgbXlSZWR1Y2VyMSxcbiAqICAgICBteVJlZHVjZXIyXG4gKiAgIClcbiAqIF1cbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gZGFmZkNhdGVnb3J5UHJvdmlkZUV4dHJhUmVkdWNlcnMoXG4gIC4uLnJlZHVjZXJzOiBBY3Rpb25SZWR1Y2VyPERhZmZDYXRlZ29yeVJlZHVjZXJzU3RhdGU+W11cbik6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gcmVkdWNlcnMubWFwKHJlZHVjZXIgPT4gKHtcbiAgICBwcm92aWRlOiBEQUZGX0NBVEVHT1JZX0VYVFJBX1JFRFVDRVJTLFxuICAgIHVzZVZhbHVlOiByZWR1Y2VyLFxuICAgIG11bHRpOiB0cnVlLFxuICB9KSk7XG59XG4iXX0=
|
21
|
+
provider: daffCategoryProvideExtraReducers, } = createMultiInjectionToken('DAFF_CATEGORY_EXTRA_REDUCERS', { providedIn: 'any' });
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmEudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NhdGVnb3J5L3N0YXRlL3NyYy9yZWR1Y2Vycy90b2tlbi9leHRyYS50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkzRCxNQUFNLENBQUMsTUFBTTtBQUNYOzs7O0dBSUc7QUFDSCxLQUFLLEVBQUUsNEJBQTRCO0FBQ25DOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsUUFBUSxFQUFFLGdDQUFnQyxHQUMzQyxHQUFHLHlCQUF5QixDQUMzQiw4QkFBOEIsRUFDOUIsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25SZWR1Y2VyIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5pbXBvcnQgeyBjcmVhdGVNdWx0aUluamVjdGlvblRva2VuIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuXG5pbXBvcnQgeyBEYWZmQ2F0ZWdvcnlSZWR1Y2Vyc1N0YXRlIH0gZnJvbSAnLi4vY2F0ZWdvcnktcmVkdWNlcnMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IHtcbiAgLyoqXG4gICAqIEEgdG9rZW4gdG8gaG9sZCB0aGUgaW5qZWN0YWJsZSBleHRyYSByZWR1Y2Vycy5cbiAgICpcbiAgICogUHJlZmVyIHVzaW5nIHtAbGluayBkYWZmQ2F0ZWdvcnlQcm92aWRlRXh0cmFSZWR1Y2Vyc30uXG4gICAqL1xuICB0b2tlbjogREFGRl9DQVRFR09SWV9FWFRSQV9SRURVQ0VSUyxcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGFkZGl0aW9uYWwgcmVkdWNlcnMgdGhhdCBydW4gYWZ0ZXIgdGhlIHN0YW5kYXJkIERhZmZvZGlsIGNhdGVnb3J5IHJlZHVjZXJzLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBwcm92aWRlcnM6IFtcbiAgICogICAuLi5kYWZmQ2F0ZWdvcnlQcm92aWRlRXh0cmFSZWR1Y2VycyhcbiAgICogICAgIG15UmVkdWNlcjEsXG4gICAqICAgICBteVJlZHVjZXIyXG4gICAqICAgKVxuICAgKiBdXG4gICAqIGBgYFxuICAgKi9cbiAgcHJvdmlkZXI6IGRhZmZDYXRlZ29yeVByb3ZpZGVFeHRyYVJlZHVjZXJzLFxufSA9IGNyZWF0ZU11bHRpSW5qZWN0aW9uVG9rZW48QWN0aW9uUmVkdWNlcjxEYWZmQ2F0ZWdvcnlSZWR1Y2Vyc1N0YXRlPj4oXG4gICdEQUZGX0NBVEVHT1JZX0VYVFJBX1JFRFVDRVJTJyxcbiAgeyBwcm92aWRlZEluOiAnYW55JyB9LFxuKTtcbiJdfQ==
|
@@ -1,19 +1,25 @@
|
|
1
|
-
import { inject
|
1
|
+
import { inject } from '@angular/core';
|
2
2
|
import { combineReducers, } from '@ngrx/store';
|
3
|
+
import { createSingleInjectionToken } from '@daffodil/core';
|
3
4
|
import { daffComposeReducers } from '@daffodil/core/state';
|
4
5
|
import { DAFF_CATEGORY_EXTRA_REDUCERS } from './extra.token';
|
5
6
|
import { daffCategoryReducers } from '../category-reducers';
|
7
|
+
export const {
|
6
8
|
/**
|
7
9
|
* An internal token to hold the Daffodil category reducers.
|
8
10
|
* Includes the extra and standard reducers.
|
9
11
|
*
|
10
12
|
* @docs-private
|
11
13
|
*/
|
12
|
-
|
14
|
+
token: DAFF_CATEGORY_REDUCERS,
|
15
|
+
/**
|
16
|
+
* Provider function for {@link DAFF_CATEGORY_REDUCERS}.
|
17
|
+
*/
|
18
|
+
provider: provideDaffCategoryReducers, } = createSingleInjectionToken('DAFF_CATEGORY_REDUCERS', {
|
13
19
|
providedIn: 'any',
|
14
20
|
factory: () => daffComposeReducers([
|
15
21
|
combineReducers(daffCategoryReducers),
|
16
22
|
...inject(DAFF_CATEGORY_EXTRA_REDUCERS),
|
17
23
|
]),
|
18
24
|
});
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdWNlcnMudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NhdGVnb3J5L3N0YXRlL3NyYy9yZWR1Y2Vycy90b2tlbi9yZWR1Y2Vycy50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFFTCxlQUFlLEdBQ2hCLE1BQU0sYUFBYSxDQUFDO0FBSXJCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTNELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUc1RCxNQUFNLENBQUMsTUFBTTtBQUNYOzs7OztHQUtHO0FBQ0gsS0FBSyxFQUFFLHNCQUFzQjtBQUM3Qjs7R0FFRztBQUNILFFBQVEsRUFBRSwyQkFBMkIsR0FDdEMsR0FBRywwQkFBMEIsQ0FDNUIsd0JBQXdCLEVBQ3hCO0lBQ0UsVUFBVSxFQUFFLEtBQUs7SUFDakIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO1FBQ2pDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQztRQUNyQyxHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztLQUN4QyxDQUFDO0NBQ0gsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3Rpb25SZWR1Y2VyLFxuICBjb21iaW5lUmVkdWNlcnMsXG59IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuLy8gdGhlc2UgdW51c2VkIGltcG9ydHMgYXJlIGEgd29ya2Fyb3VuZFxuaW1wb3J0IHsgRGFmZkNhdGVnb3J5IH0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5JztcbmltcG9ydCB7IGNyZWF0ZVNpbmdsZUluamVjdGlvblRva2VuIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuaW1wb3J0IHsgZGFmZkNvbXBvc2VSZWR1Y2VycyB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3N0YXRlJztcblxuaW1wb3J0IHsgREFGRl9DQVRFR09SWV9FWFRSQV9SRURVQ0VSUyB9IGZyb20gJy4vZXh0cmEudG9rZW4nO1xuaW1wb3J0IHsgZGFmZkNhdGVnb3J5UmVkdWNlcnMgfSBmcm9tICcuLi9jYXRlZ29yeS1yZWR1Y2Vycyc7XG5pbXBvcnQgeyBEYWZmQ2F0ZWdvcnlSZWR1Y2Vyc1N0YXRlIH0gZnJvbSAnLi4vY2F0ZWdvcnktcmVkdWNlcnMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IHtcbiAgLyoqXG4gICAqIEFuIGludGVybmFsIHRva2VuIHRvIGhvbGQgdGhlIERhZmZvZGlsIGNhdGVnb3J5IHJlZHVjZXJzLlxuICAgKiBJbmNsdWRlcyB0aGUgZXh0cmEgYW5kIHN0YW5kYXJkIHJlZHVjZXJzLlxuICAgKlxuICAgKiBAZG9jcy1wcml2YXRlXG4gICAqL1xuICB0b2tlbjogREFGRl9DQVRFR09SWV9SRURVQ0VSUyxcbiAgLyoqXG4gICAqIFByb3ZpZGVyIGZ1bmN0aW9uIGZvciB7QGxpbmsgREFGRl9DQVRFR09SWV9SRURVQ0VSU30uXG4gICAqL1xuICBwcm92aWRlcjogcHJvdmlkZURhZmZDYXRlZ29yeVJlZHVjZXJzLFxufSA9IGNyZWF0ZVNpbmdsZUluamVjdGlvblRva2VuPEFjdGlvblJlZHVjZXI8RGFmZkNhdGVnb3J5UmVkdWNlcnNTdGF0ZT4+KFxuICAnREFGRl9DQVRFR09SWV9SRURVQ0VSUycsXG4gIHtcbiAgICBwcm92aWRlZEluOiAnYW55JyxcbiAgICBmYWN0b3J5OiAoKSA9PiBkYWZmQ29tcG9zZVJlZHVjZXJzKFtcbiAgICAgIGNvbWJpbmVSZWR1Y2VycyhkYWZmQ2F0ZWdvcnlSZWR1Y2VycyksXG4gICAgICAuLi5pbmplY3QoREFGRl9DQVRFR09SWV9FWFRSQV9SRURVQ0VSUyksXG4gICAgXSksXG4gIH0sXG4pO1xuIl19
|
@@ -2,37 +2,41 @@ import * as i1 from '@angular/common/http';
|
|
2
2
|
import { HttpParams } from '@angular/common/http';
|
3
3
|
import * as i0 from '@angular/core';
|
4
4
|
import { Injectable, NgModule } from '@angular/core';
|
5
|
+
import * as i2 from 'angular-in-memory-web-api';
|
6
|
+
import { STATUS } from 'angular-in-memory-web-api';
|
5
7
|
import { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';
|
8
|
+
import { DaffInMemoryDriverBase, provideDaffInMemoryBackends } from '@daffodil/driver/in-memory';
|
6
9
|
import { CommonModule } from '@angular/common';
|
7
|
-
import {
|
8
|
-
import { STATUS } from 'angular-in-memory-web-api';
|
10
|
+
import { provideDaffCategoryDriver } from '@daffodil/category/driver';
|
9
11
|
import * as i1$1 from '@daffodil/category/testing';
|
10
12
|
import { collect } from '@daffodil/core';
|
11
|
-
import * as i2 from '@daffodil/product/driver/in-memory';
|
13
|
+
import * as i2$1 from '@daffodil/product/driver/in-memory';
|
14
|
+
|
15
|
+
const DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME = 'category';
|
12
16
|
|
13
17
|
/**
|
14
18
|
* The category in memory driver for mocking the {@link DaffCategoryDriver} with in memory data.
|
15
19
|
*
|
16
20
|
* @inheritdoc
|
17
21
|
*/
|
18
|
-
class DaffInMemoryCategoryService {
|
19
|
-
constructor(http) {
|
22
|
+
class DaffInMemoryCategoryService extends DaffInMemoryDriverBase {
|
23
|
+
constructor(http, config) {
|
24
|
+
super(config, DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME);
|
20
25
|
this.http = http;
|
21
|
-
this.url = '/api/category/';
|
22
26
|
}
|
23
27
|
get(categoryRequest) {
|
24
28
|
const params = new HttpParams()
|
25
29
|
.set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)
|
26
30
|
.set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);
|
27
|
-
return this.http.get(this.url
|
31
|
+
return this.http.get(`${this.url}/${categoryRequest.id}`, { params });
|
28
32
|
}
|
29
33
|
getByUrl(categoryRequest) {
|
30
34
|
const params = new HttpParams()
|
31
35
|
.set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)
|
32
36
|
.set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);
|
33
|
-
return this.http.get(`${this.url}
|
37
|
+
return this.http.get(`${this.url}/${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });
|
34
38
|
}
|
35
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryCategoryService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
39
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryCategoryService, deps: [{ token: i1.HttpClient }, { token: i2.InMemoryBackendConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
36
40
|
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryCategoryService, providedIn: 'root' }); }
|
37
41
|
}
|
38
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryCategoryService, decorators: [{
|
@@ -40,35 +44,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
|
|
40
44
|
args: [{
|
41
45
|
providedIn: 'root',
|
42
46
|
}]
|
43
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
44
|
-
|
45
|
-
/**
|
46
|
-
* A module that provides the {@link DaffInMemoryCategoryService} for the {@link DaffCategoryDriver} token.
|
47
|
-
*/
|
48
|
-
class DaffCategoryInMemoryDriverModule {
|
49
|
-
static forRoot() {
|
50
|
-
return {
|
51
|
-
ngModule: DaffCategoryInMemoryDriverModule,
|
52
|
-
providers: [
|
53
|
-
{
|
54
|
-
provide: DaffCategoryDriver,
|
55
|
-
useExisting: DaffInMemoryCategoryService,
|
56
|
-
},
|
57
|
-
],
|
58
|
-
};
|
59
|
-
}
|
60
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
61
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
|
62
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
|
63
|
-
}
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, decorators: [{
|
65
|
-
type: NgModule,
|
66
|
-
args: [{
|
67
|
-
imports: [
|
68
|
-
CommonModule,
|
69
|
-
],
|
70
|
-
}]
|
71
|
-
}] });
|
47
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.InMemoryBackendConfig }] });
|
72
48
|
|
73
49
|
/**
|
74
50
|
* An in-memory service that mocks out the backend services for getting categories. See the angular in memory documentation for more details.
|
@@ -93,6 +69,7 @@ class DaffInMemoryBackendCategoryService {
|
|
93
69
|
this.categoryFactory = categoryFactory;
|
94
70
|
this.metadataFactory = metadataFactory;
|
95
71
|
this.productInMemoryBackendService = productInMemoryBackendService;
|
72
|
+
this.collectionName = DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME;
|
96
73
|
this._categories = [];
|
97
74
|
this._root = this.categoryFactory.createTree(3, this.productInMemoryBackendService.products.map(({ id }) => id));
|
98
75
|
this._categories = collect(this._root, (category) => category?.children || []);
|
@@ -166,7 +143,7 @@ class DaffInMemoryBackendCategoryService {
|
|
166
143
|
}
|
167
144
|
return 1;
|
168
145
|
}
|
169
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryBackendCategoryService, deps: [{ token: i1$1.DaffCategoryFactory }, { token: i1$1.DaffCategoryPageMetadataFactory }, { token: i2.DaffInMemoryBackendProductService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
146
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryBackendCategoryService, deps: [{ token: i1$1.DaffCategoryFactory }, { token: i1$1.DaffCategoryPageMetadataFactory }, { token: i2$1.DaffInMemoryBackendProductService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
170
147
|
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryBackendCategoryService, providedIn: 'root' }); }
|
171
148
|
}
|
172
149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryBackendCategoryService, decorators: [{
|
@@ -174,7 +151,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
|
|
174
151
|
args: [{
|
175
152
|
providedIn: 'root',
|
176
153
|
}]
|
177
|
-
}], ctorParameters: () => [{ type: i1$1.DaffCategoryFactory }, { type: i1$1.DaffCategoryPageMetadataFactory }, { type: i2.DaffInMemoryBackendProductService }] });
|
154
|
+
}], ctorParameters: () => [{ type: i1$1.DaffCategoryFactory }, { type: i1$1.DaffCategoryPageMetadataFactory }, { type: i2$1.DaffInMemoryBackendProductService }] });
|
155
|
+
|
156
|
+
/**
|
157
|
+
* A module that provides the {@link DaffInMemoryCategoryService} for the {@link DaffCategoryDriver} token.
|
158
|
+
*/
|
159
|
+
class DaffCategoryInMemoryDriverModule {
|
160
|
+
static forRoot() {
|
161
|
+
return {
|
162
|
+
ngModule: DaffCategoryInMemoryDriverModule,
|
163
|
+
providers: [
|
164
|
+
provideDaffCategoryDriver(DaffInMemoryCategoryService),
|
165
|
+
provideDaffInMemoryBackends(DaffInMemoryBackendCategoryService),
|
166
|
+
],
|
167
|
+
};
|
168
|
+
}
|
169
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
170
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
|
171
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
|
172
|
+
}
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, decorators: [{
|
174
|
+
type: NgModule,
|
175
|
+
args: [{
|
176
|
+
imports: [
|
177
|
+
CommonModule,
|
178
|
+
],
|
179
|
+
}]
|
180
|
+
}] });
|
178
181
|
|
179
182
|
/**
|
180
183
|
* Generated bundle index. Do not edit.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-driver-in-memory.mjs","sources":["../../../libs/category/driver/in-memory/src/drivers/category.service.ts","../../../libs/category/driver/in-memory/src/drivers/category-driver.module.ts","../../../libs/category/driver/in-memory/src/backend/category.service.ts","../../../libs/category/driver/in-memory/src/daffodil-category-driver-in-memory.ts"],"sourcesContent":["import {\n HttpClient,\n HttpParams,\n} from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';\n\n/**\n * The category in memory driver for mocking the {@link DaffCategoryDriver} with in memory data.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffInMemoryCategoryService implements DaffCategoryServiceInterface {\n url = '/api/category/';\n\n constructor(private http: HttpClient) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n const params = new HttpParams()\n .set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)\n .set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);\n\n return this.http.get<DaffGetCategoryResponse>(this.url + categoryRequest.id, { params });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n const params = new HttpParams()\n .set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)\n .set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);\n\n return this.http.get<DaffGetCategoryResponse>(`${this.url}${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });\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 { DaffInMemoryCategoryService } from './category.service';\n\n/**\n * A module that provides the {@link DaffInMemoryCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryInMemoryDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryInMemoryDriverModule> {\n return {\n ngModule: DaffCategoryInMemoryDriverModule,\n providers: [\n {\n provide: DaffCategoryDriver,\n useExisting: DaffInMemoryCategoryService,\n },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\nimport {\n InMemoryDbService,\n RequestInfoUtilities,\n ParsedRequestUrl,\n STATUS,\n} from 'angular-in-memory-web-api';\n\nimport {\n DaffCategory,\n DaffCategoryPageMetadata,\n} from '@daffodil/category';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { collect } from '@daffodil/core';\nimport { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';\nimport { DaffProduct } from '@daffodil/product';\nimport { DaffInMemoryBackendProductService } from '@daffodil/product/driver/in-memory';\n\n/**\n * An in-memory service that mocks out the backend services for getting categories. See the angular in memory documentation for more details.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffInMemoryBackendCategoryService implements InMemoryDbService {\n protected _root: DaffCategory;\n protected _categories: DaffCategory[] = [];\n protected _categoryPageMetadata: DaffCategoryPageMetadata;\n\n get rootCategory(): DaffCategory {\n return this._root;\n }\n\n /**\n * The collection of categories in the backend.\n */\n get categories(): DaffCategory[] {\n return this._categories;\n }\n\n /**\n * The metadata associated with the current page.\n */\n get categoryPageMetadata(): DaffCategoryPageMetadata {\n return this._categoryPageMetadata;\n }\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private metadataFactory: DaffCategoryPageMetadataFactory,\n private productInMemoryBackendService: DaffInMemoryBackendProductService,\n ) {\n this._root = this.categoryFactory.createTree(\n 3,\n this.productInMemoryBackendService.products.map(({ id }) => id),\n );\n this._categories = collect(\n this._root,\n (category) => category?.children || [],\n );\n }\n\n /**\n * @docs-private\n */\n parseRequestUrl(url: string, utils: RequestInfoUtilities): ParsedRequestUrl {\n return utils.parseRequestUrl(url);\n }\n\n /**\n * @docs-private\n */\n createDb(): any {\n return {\n categories: this.categories,\n };\n }\n\n /**\n * Get a category.\n *\n * @param reqInfo\n */\n get(reqInfo: any) {\n // this method is overloaded for both get by ID and URL so we check both\n const category = this.categories.filter(({ id, url }) => id === reqInfo.id || daffUriTruncateLeadingSlash(url) === reqInfo.id)[0];\n\n if (category) {\n this._categoryPageMetadata = this.metadataFactory.create({\n id: reqInfo.id,\n pageSize: this.generatePageSize(reqInfo),\n currentPage: this.getCurrentPageParam(reqInfo),\n totalPages: this.getTotalPages(category.product_ids, this.generatePageSize(reqInfo)),\n ids: this.trimProductIdsToSinglePage(category.product_ids, this.getCurrentPageParam(reqInfo), this.generatePageSize(reqInfo)),\n count: category.total_products,\n });\n\n return reqInfo.utils.createResponse$(() => ({\n body: {\n category,\n categoryPageMetadata: this._categoryPageMetadata,\n products: this.productInMemoryBackendService.products,\n },\n status: STATUS.OK,\n }));\n } else {\n this._categoryPageMetadata = null;\n return reqInfo.utils.createResponse$(() => ({\n body: {},\n status: STATUS.NOT_FOUND,\n }));\n }\n\n }\n\n protected getTotalPages(allIds: DaffProduct['id'][], pageSize: number) {\n return Math.ceil(allIds.length/pageSize);\n }\n\n protected trimProductIdsToSinglePage(allIds: any[], currentPage: number, pageSize: number) {\n const tempIds = [...allIds];\n tempIds.splice(0, (currentPage-1) * pageSize);\n tempIds.splice(pageSize, tempIds.length-pageSize);\n\n return tempIds;\n }\n\n protected generatePageSize(reqInfo) {\n if(reqInfo.req.params.map && reqInfo.req.params.map.get('pageSize') && reqInfo.req.params.map.get('pageSize')[0]) {\n return parseInt(reqInfo.req.params.map.get('pageSize')[0], 10);\n }\n return 10;\n }\n\n protected getCurrentPageParam(reqInfo) {\n if(reqInfo.req.params.map && reqInfo.req.params.map.get('currentPage') && reqInfo.req.params.map.get('currentPage')[0]) {\n return parseInt(reqInfo.req.params.map.get('currentPage')[0], 10);\n }\n return 1;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"daffodil-category-driver-in-memory.mjs","sources":["../../../libs/category/driver/in-memory/src/collection-name.const.ts","../../../libs/category/driver/in-memory/src/drivers/category.service.ts","../../../libs/category/driver/in-memory/src/backend/category.service.ts","../../../libs/category/driver/in-memory/src/drivers/category-driver.module.ts","../../../libs/category/driver/in-memory/src/daffodil-category-driver-in-memory.ts"],"sourcesContent":["export const DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME = 'category';\n","import {\n HttpClient,\n HttpParams,\n} from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { InMemoryBackendConfig } from 'angular-in-memory-web-api';\nimport { Observable } from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';\nimport { DaffInMemoryDriverBase } from '@daffodil/driver/in-memory';\n\nimport { DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME } from '../collection-name.const';\n\n/**\n * The category in memory driver for mocking the {@link DaffCategoryDriver} with in memory data.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffInMemoryCategoryService extends DaffInMemoryDriverBase implements DaffCategoryServiceInterface {\n constructor(\n private http: HttpClient,\n config: InMemoryBackendConfig,\n ) {\n super(config, DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME);\n }\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n const params = new HttpParams()\n .set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)\n .set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);\n\n return this.http.get<DaffGetCategoryResponse>(`${this.url}/${categoryRequest.id}`, { params });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n const params = new HttpParams()\n .set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)\n .set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);\n\n return this.http.get<DaffGetCategoryResponse>(`${this.url}/${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\nimport {\n InMemoryDbService,\n RequestInfoUtilities,\n ParsedRequestUrl,\n STATUS,\n} from 'angular-in-memory-web-api';\n\nimport {\n DaffCategory,\n DaffCategoryPageMetadata,\n} from '@daffodil/category';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { collect } from '@daffodil/core';\nimport { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';\nimport { DaffInMemorySingleRouteableBackend } from '@daffodil/driver/in-memory';\nimport { DaffProduct } from '@daffodil/product';\nimport { DaffInMemoryBackendProductService } from '@daffodil/product/driver/in-memory';\n\nimport { DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME } from '../collection-name.const';\n\n/**\n * An in-memory service that mocks out the backend services for getting categories. See the angular in memory documentation for more details.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffInMemoryBackendCategoryService implements InMemoryDbService, DaffInMemorySingleRouteableBackend {\n readonly collectionName = DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME;\n\n protected _root: DaffCategory;\n protected _categories: DaffCategory[] = [];\n protected _categoryPageMetadata: DaffCategoryPageMetadata;\n\n get rootCategory(): DaffCategory {\n return this._root;\n }\n\n /**\n * The collection of categories in the backend.\n */\n get categories(): DaffCategory[] {\n return this._categories;\n }\n\n /**\n * The metadata associated with the current page.\n */\n get categoryPageMetadata(): DaffCategoryPageMetadata {\n return this._categoryPageMetadata;\n }\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private metadataFactory: DaffCategoryPageMetadataFactory,\n private productInMemoryBackendService: DaffInMemoryBackendProductService,\n ) {\n this._root = this.categoryFactory.createTree(\n 3,\n this.productInMemoryBackendService.products.map(({ id }) => id),\n );\n this._categories = collect(\n this._root,\n (category) => category?.children || [],\n );\n }\n\n /**\n * @docs-private\n */\n parseRequestUrl(url: string, utils: RequestInfoUtilities): ParsedRequestUrl {\n return utils.parseRequestUrl(url);\n }\n\n /**\n * @docs-private\n */\n createDb(): any {\n return {\n categories: this.categories,\n };\n }\n\n /**\n * Get a category.\n *\n * @param reqInfo\n */\n get(reqInfo: any) {\n // this method is overloaded for both get by ID and URL so we check both\n const category = this.categories.filter(({ id, url }) => id === reqInfo.id || daffUriTruncateLeadingSlash(url) === reqInfo.id)[0];\n\n if (category) {\n this._categoryPageMetadata = this.metadataFactory.create({\n id: reqInfo.id,\n pageSize: this.generatePageSize(reqInfo),\n currentPage: this.getCurrentPageParam(reqInfo),\n totalPages: this.getTotalPages(category.product_ids, this.generatePageSize(reqInfo)),\n ids: this.trimProductIdsToSinglePage(category.product_ids, this.getCurrentPageParam(reqInfo), this.generatePageSize(reqInfo)),\n count: category.total_products,\n });\n\n return reqInfo.utils.createResponse$(() => ({\n body: {\n category,\n categoryPageMetadata: this._categoryPageMetadata,\n products: this.productInMemoryBackendService.products,\n },\n status: STATUS.OK,\n }));\n } else {\n this._categoryPageMetadata = null;\n return reqInfo.utils.createResponse$(() => ({\n body: {},\n status: STATUS.NOT_FOUND,\n }));\n }\n\n }\n\n protected getTotalPages(allIds: DaffProduct['id'][], pageSize: number) {\n return Math.ceil(allIds.length/pageSize);\n }\n\n protected trimProductIdsToSinglePage(allIds: any[], currentPage: number, pageSize: number) {\n const tempIds = [...allIds];\n tempIds.splice(0, (currentPage-1) * pageSize);\n tempIds.splice(pageSize, tempIds.length-pageSize);\n\n return tempIds;\n }\n\n protected generatePageSize(reqInfo) {\n if(reqInfo.req.params.map && reqInfo.req.params.map.get('pageSize') && reqInfo.req.params.map.get('pageSize')[0]) {\n return parseInt(reqInfo.req.params.map.get('pageSize')[0], 10);\n }\n return 10;\n }\n\n protected getCurrentPageParam(reqInfo) {\n if(reqInfo.req.params.map && reqInfo.req.params.map.get('currentPage') && reqInfo.req.params.map.get('currentPage')[0]) {\n return parseInt(reqInfo.req.params.map.get('currentPage')[0], 10);\n }\n return 1;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { provideDaffCategoryDriver } from '@daffodil/category/driver';\nimport { provideDaffInMemoryBackends } from '@daffodil/driver/in-memory';\n\nimport { DaffInMemoryCategoryService } from './category.service';\nimport { DaffInMemoryBackendCategoryService } from '../backend/category.service';\n\n/**\n * A module that provides the {@link DaffInMemoryCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryInMemoryDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryInMemoryDriverModule> {\n return {\n ngModule: DaffCategoryInMemoryDriverModule,\n providers: [\n provideDaffCategoryDriver(DaffInMemoryCategoryService),\n provideDaffInMemoryBackends(DaffInMemoryBackendCategoryService),\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2"],"mappings":"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"}
|