@daffodil/category 0.77.0 → 0.78.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.
@@ -1,16 +1,18 @@
1
1
  import { InMemoryDbService, RequestInfoUtilities, ParsedRequestUrl } from 'angular-in-memory-web-api';
2
2
  import { DaffCategory, DaffCategoryPageMetadata } from '@daffodil/category';
3
3
  import { DaffCategoryFactory, DaffCategoryPageMetadataFactory } from '@daffodil/category/testing';
4
+ import { DaffInMemorySingleRouteableBackend } from '@daffodil/driver/in-memory';
4
5
  import { DaffProduct } from '@daffodil/product';
5
6
  import { DaffInMemoryBackendProductService } from '@daffodil/product/driver/in-memory';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * An in-memory service that mocks out the backend services for getting categories. See the angular in memory documentation for more details.
9
10
  */
10
- export declare class DaffInMemoryBackendCategoryService implements InMemoryDbService {
11
+ export declare class DaffInMemoryBackendCategoryService implements InMemoryDbService, DaffInMemorySingleRouteableBackend {
11
12
  private categoryFactory;
12
13
  private metadataFactory;
13
14
  private productInMemoryBackendService;
15
+ readonly collectionName = "category";
14
16
  protected _root: DaffCategory;
15
17
  protected _categories: DaffCategory[];
16
18
  protected _categoryPageMetadata: DaffCategoryPageMetadata;
@@ -0,0 +1 @@
1
+ export declare const DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME = "category";
@@ -1,17 +1,18 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
+ import { InMemoryBackendConfig } from 'angular-in-memory-web-api';
2
3
  import { Observable } from 'rxjs';
3
4
  import { DaffGetCategoryResponse, DaffCategoryIdRequest, DaffCategoryUrlRequest } from '@daffodil/category';
4
5
  import { DaffCategoryServiceInterface } from '@daffodil/category/driver';
6
+ import { DaffInMemoryDriverBase } from '@daffodil/driver/in-memory';
5
7
  import * as i0 from "@angular/core";
6
8
  /**
7
9
  * The category in memory driver for mocking the {@link DaffCategoryDriver} with in memory data.
8
10
  *
9
11
  * @inheritdoc
10
12
  */
11
- export declare class DaffInMemoryCategoryService implements DaffCategoryServiceInterface {
13
+ export declare class DaffInMemoryCategoryService extends DaffInMemoryDriverBase implements DaffCategoryServiceInterface {
12
14
  private http;
13
- url: string;
14
- constructor(http: HttpClient);
15
+ constructor(http: HttpClient, config: InMemoryBackendConfig);
15
16
  get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse>;
16
17
  getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse>;
17
18
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffInMemoryCategoryService, never>;
@@ -4,6 +4,7 @@ import { DaffCategoryFactory, DaffCategoryPageMetadataFactory, } from '@daffodil
4
4
  import { collect } from '@daffodil/core';
5
5
  import { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';
6
6
  import { DaffInMemoryBackendProductService } from '@daffodil/product/driver/in-memory';
7
+ import { DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME } from '../collection-name.const';
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "@daffodil/category/testing";
9
10
  import * as i2 from "@daffodil/product/driver/in-memory";
@@ -30,6 +31,7 @@ export class DaffInMemoryBackendCategoryService {
30
31
  this.categoryFactory = categoryFactory;
31
32
  this.metadataFactory = metadataFactory;
32
33
  this.productInMemoryBackendService = productInMemoryBackendService;
34
+ this.collectionName = DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME;
33
35
  this._categories = [];
34
36
  this._root = this.categoryFactory.createTree(3, this.productInMemoryBackendService.products.map(({ id }) => id));
35
37
  this._categories = collect(this._root, (category) => category?.children || []);
@@ -112,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
112
114
  providedIn: 'root',
113
115
  }]
114
116
  }], ctorParameters: () => [{ type: i1.DaffCategoryFactory }, { type: i1.DaffCategoryPageMetadataFactory }, { type: i2.DaffInMemoryBackendProductService }] });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvYmFja2VuZC9jYXRlZ29yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUlMLE1BQU0sR0FDUCxNQUFNLDJCQUEyQixDQUFDO0FBTW5DLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsK0JBQStCLEdBQ2hDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXJFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7O0FBRXZGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtDQUFrQztJQUs3QyxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7SUFFRCxZQUNVLGVBQW9DLEVBQ3BDLGVBQWdELEVBQ2hELDZCQUFnRTtRQUZoRSxvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFDcEMsb0JBQWUsR0FBZixlQUFlLENBQWlDO1FBQ2hELGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBbUM7UUF4QmhFLGdCQUFXLEdBQW1CLEVBQUUsQ0FBQztRQTBCekMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FDMUMs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TyxDQUFDLENBQUM7SUFDWCxDQUFDO2lJQW5IVSxrQ0FBa0M7cUlBQWxDLGtDQUFrQyxjQUZqQyxNQUFNOzsyRkFFUCxrQ0FBa0M7a0JBSDlDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmFrZXIgfSBmcm9tICdAZmFrZXItanMvZmFrZXIvbG9jYWxlL2VuX1VTJztcbmltcG9ydCB7XG4gIEluTWVtb3J5RGJTZXJ2aWNlLFxuICBSZXF1ZXN0SW5mb1V0aWxpdGllcyxcbiAgUGFyc2VkUmVxdWVzdFVybCxcbiAgU1RBVFVTLFxufSBmcm9tICdhbmd1bGFyLWluLW1lbW9yeS13ZWItYXBpJztcblxuaW1wb3J0IHtcbiAgRGFmZkNhdGVnb3J5LFxuICBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGEsXG59IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeSc7XG5pbXBvcnQge1xuICBEYWZmQ2F0ZWdvcnlGYWN0b3J5LFxuICBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGFGYWN0b3J5LFxufSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnkvdGVzdGluZyc7XG5pbXBvcnQgeyBjb2xsZWN0IH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuaW1wb3J0IHsgZGFmZlVyaVRydW5jYXRlTGVhZGluZ1NsYXNoIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUvcm91dGluZyc7XG5pbXBvcnQgeyBEYWZmUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcbmltcG9ydCB7IERhZmZJbk1lbW9yeUJhY2tlbmRQcm9kdWN0U2VydmljZSB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0L2RyaXZlci9pbi1tZW1vcnknO1xuXG4vKipcbiAqIEFuIGluLW1lbW9yeSBzZXJ2aWNlIHRoYXQgbW9ja3Mgb3V0IHRoZSBiYWNrZW5kIHNlcnZpY2VzIGZvciBnZXR0aW5nIGNhdGVnb3JpZXMuIFNlZSB0aGUgYW5ndWxhciBpbiBtZW1vcnkgZG9jdW1lbnRhdGlvbiBmb3IgbW9yZSBkZXRhaWxzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGFmZkluTWVtb3J5QmFja2VuZENhdGVnb3J5U2VydmljZSBpbXBsZW1lbnRzIEluTWVtb3J5RGJTZXJ2aWNlIHtcbiAgcHJvdGVjdGVkIF9yb290OiBEYWZmQ2F0ZWdvcnk7XG4gIHByb3RlY3RlZCBfY2F0ZWdvcmllczogRGFmZkNhdGVnb3J5W10gPSBbXTtcbiAgcHJvdGVjdGVkIF9jYXRlZ29yeVBhZ2VNZXRhZGF0YTogRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhO1xuXG4gIGdldCByb290Q2F0ZWdvcnkoKTogRGFmZkNhdGVnb3J5IHtcbiAgICByZXR1cm4gdGhpcy5fcm9vdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgY29sbGVjdGlvbiBvZiBjYXRlZ29yaWVzIGluIHRoZSBiYWNrZW5kLlxuICAgKi9cbiAgZ2V0IGNhdGVnb3JpZXMoKTogRGFmZkNhdGVnb3J5W10ge1xuICAgIHJldHVybiB0aGlzLl9jYXRlZ29yaWVzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBtZXRhZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGN1cnJlbnQgcGFnZS5cbiAgICovXG4gIGdldCBjYXRlZ29yeVBhZ2VNZXRhZGF0YSgpOiBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGEge1xuICAgIHJldHVybiB0aGlzLl9jYXRlZ29yeVBhZ2VNZXRhZGF0YTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2F0ZWdvcnlGYWN0b3J5OiBEYWZmQ2F0ZWdvcnlGYWN0b3J5LFxuICAgIHByaXZhdGUgbWV0YWRhdGFGYWN0b3J5OiBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGFGYWN0b3J5LFxuICAgIHByaXZhdGUgcHJvZHVjdEluTWVtb3J5QmFja2VuZFNlcnZpY2U6IERhZmZJbk1lbW9yeUJhY2tlbmRQcm9kdWN0U2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5fcm9vdCA9IHRoaXMuY2F0ZWdvcnlGYWN0b3J5LmNyZWF0ZVRyZWUoXG4gICAgICAzLFxuICAgICAgdGhpcy5wcm9kdWN0SW5NZW1vcnlCYWNrZW5kU2VydmljZS5wcm9kdWN0cy5tYXAoKHsgaWQgfSkgPT4gaWQpLFxuICAgICk7XG4gICAgdGhpcy5fY2F0ZWdvcmllcyA9IGNvbGxlY3QoXG4gICAgICB0aGlzLl9yb290LFxuICAgICAgKGNhdGVnb3J5KSA9PiBjYXRlZ29yeT8uY2hpbGRyZW4gfHwgW10sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZG9jcy1wcml2YXRlXG4gICAqL1xuICBwYXJzZVJlcXVlc3RVcmwodXJsOiBzdHJpbmcsIHV0aWxzOiBSZXF1ZXN0SW5mb1V0aWxpdGllcyk6IFBhcnNlZFJlcXVlc3RVcmwge1xuICAgIHJldHVybiB1dGlscy5wYXJzZVJlcXVlc3RVcmwodXJsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZG9jcy1wcml2YXRlXG4gICAqL1xuICBjcmVhdGVEYigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjYXRlZ29yaWVzOiB0aGlzLmNhdGVnb3JpZXMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBjYXRlZ29yeS5cbiAgICpcbiAgICogQHBhcmFtIHJlcUluZm9cbiAgICovXG4gIGdldChyZXFJbmZvOiBhbnkpIHtcbiAgICAvLyB0aGlzIG1ldGhvZCBpcyBvdmVybG9hZGVkIGZvciBib3RoIGdldCBieSBJRCBhbmQgVVJMIHNvIHdlIGNoZWNrIGJvdGhcbiAgICBjb25zdCBjYXRlZ29yeSA9IHRoaXMuY2F0ZWdvcmllcy5maWx0ZXIoKHsgaWQsIHVybCB9KSA9PiBpZCA9PT0gcmVxSW5mby5pZCB8fCBkYWZmVXJpVHJ1bmNhdGVMZWFkaW5nU2xhc2godXJsKSA9PT0gcmVxSW5mby5pZClbMF07XG5cbiAgICBpZiAoY2F0ZWdvcnkpIHtcbiAgICAgIHRoaXMuX2NhdGVnb3J5UGFnZU1ldGFkYXRhID0gdGhpcy5tZXRhZGF0YUZhY3RvcnkuY3JlYXRlKHtcbiAgICAgICAgaWQ6IHJlcUluZm8uaWQsXG4gICAgICAgIHBhZ2VTaXplOiB0aGlzLmdlbmVyYXRlUGFnZVNpemUocmVxSW5mbyksXG4gICAgICAgIGN1cnJlbnRQYWdlOiB0aGlzLmdldEN1cnJlbnRQYWdlUGFyYW0ocmVxSW5mbyksXG4gICAgICAgIHRvdGFsUGFnZXM6IHRoaXMuZ2V0VG90YWxQYWdlcyhjYXRlZ29yeS5wcm9kdWN0X2lkcywgdGhpcy5nZW5lcmF0ZVBhZ2VTaXplKHJlcUluZm8pKSxcbiAgICAgICAgaWRzOiB0aGlzLnRyaW1Qcm9kdWN0SWRzVG9TaW5nbGVQYWdlKGNhdGVnb3J5LnByb2R1Y3RfaWRzLCB0aGlzLmdldEN1cnJlbnRQYWdlUGFyYW0ocmVxSW5mbyksIHRoaXMuZ2VuZXJhdGVQYWdlU2l6ZShyZXFJbmZvKSksXG4gICAgICAgIGNvdW50OiBjYXRlZ29yeS50b3RhbF9wcm9kdWN0cyxcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gcmVxSW5mby51dGlscy5jcmVhdGVSZXNwb25zZSQoKCkgPT4gKHtcbiAgICAgICAgYm9keToge1xuICAgICAgICAgIGNhdGVnb3J5LFxuICAgICAgICAgIGNhdGVnb3J5UGFnZU1ldGFkYXRhOiB0aGlzLl9jYXRlZ29yeVBhZ2VNZXRhZGF0YSxcbiAgICAgICAgICBwcm9kdWN0czogdGhpcy5wcm9kdWN0SW5NZW1vcnlCYWNrZW5kU2VydmljZS5wcm9kdWN0cyxcbiAgICAgICAgfSxcbiAgICAgICAgc3RhdHVzOiBTVEFUVVMuT0ssXG4gICAgICB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2NhdGVnb3J5UGFnZU1ldGFkYXRhID0gbnVsbDtcbiAgICAgIHJldHVybiByZXFJbmZvLnV0aWxzLmNyZWF0ZVJlc3BvbnNlJCgoKSA9PiAoe1xuICAgICAgICBib2R5OiB7fSxcbiAgICAgICAgc3RhdHVzOiBTVEFUVVMuTk9UX0ZPVU5ELFxuICAgICAgfSkpO1xuICAgIH1cblxuICB9XG5cbiAgcHJvdGVjdGVkIGdldFRvdGFsUGFnZXMoYWxsSWRzOiBEYWZmUHJvZHVjdFsnaWQnXVtdLCBwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIE1hdGguY2VpbChhbGxJZHMubGVuZ3RoL3BhZ2VTaXplKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB0cmltUHJvZHVjdElkc1RvU2luZ2xlUGFnZShhbGxJZHM6IGFueVtdLCBjdXJyZW50UGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgY29uc3QgdGVtcElkcyA9IFsuLi5hbGxJZHNdO1xuICAgIHRlbXBJZHMuc3BsaWNlKDAsIChjdXJyZW50UGFnZS0xKSAqIHBhZ2VTaXplKTtcbiAgICB0ZW1wSWRzLnNwbGljZShwYWdlU2l6ZSwgdGVtcElkcy5sZW5ndGgtcGFnZVNpemUpO1xuXG4gICAgcmV0dXJuIHRlbXBJZHM7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2VuZXJhdGVQYWdlU2l6ZShyZXFJbmZvKSB7XG4gICAgaWYocmVxSW5mby5yZXEucGFyYW1zLm1hcCAmJiByZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgncGFnZVNpemUnKSAmJiByZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgncGFnZVNpemUnKVswXSkge1xuICAgICAgcmV0dXJuIHBhcnNlSW50KHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdwYWdlU2l6ZScpWzBdLCAxMCk7XG4gICAgfVxuICAgIHJldHVybiAxMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRDdXJyZW50UGFnZVBhcmFtKHJlcUluZm8pIHtcbiAgICBpZihyZXFJbmZvLnJlcS5wYXJhbXMubWFwICYmIHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdjdXJyZW50UGFnZScpICYmIHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdjdXJyZW50UGFnZScpWzBdKSB7XG4gICAgICByZXR1cm4gcGFyc2VJbnQocmVxSW5mby5yZXEucGFyYW1zLm1hcC5nZXQoJ2N1cnJlbnRQYWdlJylbMF0sIDEwKTtcbiAgICB9XG4gICAgcmV0dXJuIDE7XG4gIH1cbn1cbiJdfQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvYmFja2VuZC9jYXRlZ29yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUlMLE1BQU0sR0FDUCxNQUFNLDJCQUEyQixDQUFDO0FBTW5DLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsK0JBQStCLEdBQ2hDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBR3JFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXZGLE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBRW5GOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtDQUFrQztJQU83QyxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7SUFFRCxZQUNVLGVBQW9DLEVBQ3BDLGVBQWdELEVBQ2hELDZCQUFnRTtRQUZoRSxvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFDcEMsb0JBQWUsR0FBZixlQUFlLENBQWlDO1FBQ2hELGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBbUM7UUEzQmpFLG1CQUFjLEdBQUcsdUNBQXVDLENBQUM7UUFHeEQsZ0JBQVcs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R0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLENBQUM7UUFDRCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7aUlBckhVLGtDQUFrQztxSUFBbEMsa0NBQWtDLGNBRmpDLE1BQU07OzJGQUVQLGtDQUFrQztrQkFIOUMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmYWtlciB9IGZyb20gJ0BmYWtlci1qcy9mYWtlci9sb2NhbGUvZW5fVVMnO1xuaW1wb3J0IHtcbiAgSW5NZW1vcnlEYlNlcnZpY2UsXG4gIFJlcXVlc3RJbmZvVXRpbGl0aWVzLFxuICBQYXJzZWRSZXF1ZXN0VXJsLFxuICBTVEFUVVMsXG59IGZyb20gJ2FuZ3VsYXItaW4tbWVtb3J5LXdlYi1hcGknO1xuXG5pbXBvcnQge1xuICBEYWZmQ2F0ZWdvcnksXG4gIERhZmZDYXRlZ29yeVBhZ2VNZXRhZGF0YSxcbn0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5JztcbmltcG9ydCB7XG4gIERhZmZDYXRlZ29yeUZhY3RvcnksXG4gIERhZmZDYXRlZ29yeVBhZ2VNZXRhZGF0YUZhY3RvcnksXG59IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeS90ZXN0aW5nJztcbmltcG9ydCB7IGNvbGxlY3QgfSBmcm9tICdAZGFmZm9kaWwvY29yZSc7XG5pbXBvcnQgeyBkYWZmVXJpVHJ1bmNhdGVMZWFkaW5nU2xhc2ggfSBmcm9tICdAZGFmZm9kaWwvY29yZS9yb3V0aW5nJztcbmltcG9ydCB7IERhZmZJbk1lbW9yeVNpbmdsZVJvdXRlYWJsZUJhY2tlbmQgfSBmcm9tICdAZGFmZm9kaWwvZHJpdmVyL2luLW1lbW9yeSc7XG5pbXBvcnQgeyBEYWZmUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcbmltcG9ydCB7IERhZmZJbk1lbW9yeUJhY2tlbmRQcm9kdWN0U2VydmljZSB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0L2RyaXZlci9pbi1tZW1vcnknO1xuXG5pbXBvcnQgeyBEQUZGX0NBVEVHT1JZX0lOX01FTU9SWV9DT0xMRUNUSU9OX05BTUUgfSBmcm9tICcuLi9jb2xsZWN0aW9uLW5hbWUuY29uc3QnO1xuXG4vKipcbiAqIEFuIGluLW1lbW9yeSBzZXJ2aWNlIHRoYXQgbW9ja3Mgb3V0IHRoZSBiYWNrZW5kIHNlcnZpY2VzIGZvciBnZXR0aW5nIGNhdGVnb3JpZXMuIFNlZSB0aGUgYW5ndWxhciBpbiBtZW1vcnkgZG9jdW1lbnRhdGlvbiBmb3IgbW9yZSBkZXRhaWxzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGFmZkluTWVtb3J5QmFja2VuZENhdGVnb3J5U2VydmljZSBpbXBsZW1lbnRzIEluTWVtb3J5RGJTZXJ2aWNlLCBEYWZmSW5NZW1vcnlTaW5nbGVSb3V0ZWFibGVCYWNrZW5kIHtcbiAgcmVhZG9ubHkgY29sbGVjdGlvbk5hbWUgPSBEQUZGX0NBVEVHT1JZX0lOX01FTU9SWV9DT0xMRUNUSU9OX05BTUU7XG5cbiAgcHJvdGVjdGVkIF9yb290OiBEYWZmQ2F0ZWdvcnk7XG4gIHByb3RlY3RlZCBfY2F0ZWdvcmllczogRGFmZkNhdGVnb3J5W10gPSBbXTtcbiAgcHJvdGVjdGVkIF9jYXRlZ29yeVBhZ2VNZXRhZGF0YTogRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhO1xuXG4gIGdldCByb290Q2F0ZWdvcnkoKTogRGFmZkNhdGVnb3J5IHtcbiAgICByZXR1cm4gdGhpcy5fcm9vdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgY29sbGVjdGlvbiBvZiBjYXRlZ29yaWVzIGluIHRoZSBiYWNrZW5kLlxuICAgKi9cbiAgZ2V0IGNhdGVnb3JpZXMoKTogRGFmZkNhdGVnb3J5W10ge1xuICAgIHJldHVybiB0aGlzLl9jYXRlZ29yaWVzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBtZXRhZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGN1cnJlbnQgcGFnZS5cbiAgICovXG4gIGdldCBjYXRlZ29yeVBhZ2VNZXRhZGF0YSgpOiBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGEge1xuICAgIHJldHVybiB0aGlzLl9jYXRlZ29yeVBhZ2VNZXRhZGF0YTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2F0ZWdvcnlGYWN0b3J5OiBEYWZmQ2F0ZWdvcnlGYWN0b3J5LFxuICAgIHByaXZhdGUgbWV0YWRhdGFGYWN0b3J5OiBEYWZmQ2F0ZWdvcnlQYWdlTWV0YWRhdGFGYWN0b3J5LFxuICAgIHByaXZhdGUgcHJvZHVjdEluTWVtb3J5QmFja2VuZFNlcnZpY2U6IERhZmZJbk1lbW9yeUJhY2tlbmRQcm9kdWN0U2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5fcm9vdCA9IHRoaXMuY2F0ZWdvcnlGYWN0b3J5LmNyZWF0ZVRyZWUoXG4gICAgICAzLFxuICAgICAgdGhpcy5wcm9kdWN0SW5NZW1vcnlCYWNrZW5kU2VydmljZS5wcm9kdWN0cy5tYXAoKHsgaWQgfSkgPT4gaWQpLFxuICAgICk7XG4gICAgdGhpcy5fY2F0ZWdvcmllcyA9IGNvbGxlY3QoXG4gICAgICB0aGlzLl9yb290LFxuICAgICAgKGNhdGVnb3J5KSA9PiBjYXRlZ29yeT8uY2hpbGRyZW4gfHwgW10sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZG9jcy1wcml2YXRlXG4gICAqL1xuICBwYXJzZVJlcXVlc3RVcmwodXJsOiBzdHJpbmcsIHV0aWxzOiBSZXF1ZXN0SW5mb1V0aWxpdGllcyk6IFBhcnNlZFJlcXVlc3RVcmwge1xuICAgIHJldHVybiB1dGlscy5wYXJzZVJlcXVlc3RVcmwodXJsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZG9jcy1wcml2YXRlXG4gICAqL1xuICBjcmVhdGVEYigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjYXRlZ29yaWVzOiB0aGlzLmNhdGVnb3JpZXMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBjYXRlZ29yeS5cbiAgICpcbiAgICogQHBhcmFtIHJlcUluZm9cbiAgICovXG4gIGdldChyZXFJbmZvOiBhbnkpIHtcbiAgICAvLyB0aGlzIG1ldGhvZCBpcyBvdmVybG9hZGVkIGZvciBib3RoIGdldCBieSBJRCBhbmQgVVJMIHNvIHdlIGNoZWNrIGJvdGhcbiAgICBjb25zdCBjYXRlZ29yeSA9IHRoaXMuY2F0ZWdvcmllcy5maWx0ZXIoKHsgaWQsIHVybCB9KSA9PiBpZCA9PT0gcmVxSW5mby5pZCB8fCBkYWZmVXJpVHJ1bmNhdGVMZWFkaW5nU2xhc2godXJsKSA9PT0gcmVxSW5mby5pZClbMF07XG5cbiAgICBpZiAoY2F0ZWdvcnkpIHtcbiAgICAgIHRoaXMuX2NhdGVnb3J5UGFnZU1ldGFkYXRhID0gdGhpcy5tZXRhZGF0YUZhY3RvcnkuY3JlYXRlKHtcbiAgICAgICAgaWQ6IHJlcUluZm8uaWQsXG4gICAgICAgIHBhZ2VTaXplOiB0aGlzLmdlbmVyYXRlUGFnZVNpemUocmVxSW5mbyksXG4gICAgICAgIGN1cnJlbnRQYWdlOiB0aGlzLmdldEN1cnJlbnRQYWdlUGFyYW0ocmVxSW5mbyksXG4gICAgICAgIHRvdGFsUGFnZXM6IHRoaXMuZ2V0VG90YWxQYWdlcyhjYXRlZ29yeS5wcm9kdWN0X2lkcywgdGhpcy5nZW5lcmF0ZVBhZ2VTaXplKHJlcUluZm8pKSxcbiAgICAgICAgaWRzOiB0aGlzLnRyaW1Qcm9kdWN0SWRzVG9TaW5nbGVQYWdlKGNhdGVnb3J5LnByb2R1Y3RfaWRzLCB0aGlzLmdldEN1cnJlbnRQYWdlUGFyYW0ocmVxSW5mbyksIHRoaXMuZ2VuZXJhdGVQYWdlU2l6ZShyZXFJbmZvKSksXG4gICAgICAgIGNvdW50OiBjYXRlZ29yeS50b3RhbF9wcm9kdWN0cyxcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gcmVxSW5mby51dGlscy5jcmVhdGVSZXNwb25zZSQoKCkgPT4gKHtcbiAgICAgICAgYm9keToge1xuICAgICAgICAgIGNhdGVnb3J5LFxuICAgICAgICAgIGNhdGVnb3J5UGFnZU1ldGFkYXRhOiB0aGlzLl9jYXRlZ29yeVBhZ2VNZXRhZGF0YSxcbiAgICAgICAgICBwcm9kdWN0czogdGhpcy5wcm9kdWN0SW5NZW1vcnlCYWNrZW5kU2VydmljZS5wcm9kdWN0cyxcbiAgICAgICAgfSxcbiAgICAgICAgc3RhdHVzOiBTVEFUVVMuT0ssXG4gICAgICB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2NhdGVnb3J5UGFnZU1ldGFkYXRhID0gbnVsbDtcbiAgICAgIHJldHVybiByZXFJbmZvLnV0aWxzLmNyZWF0ZVJlc3BvbnNlJCgoKSA9PiAoe1xuICAgICAgICBib2R5OiB7fSxcbiAgICAgICAgc3RhdHVzOiBTVEFUVVMuTk9UX0ZPVU5ELFxuICAgICAgfSkpO1xuICAgIH1cblxuICB9XG5cbiAgcHJvdGVjdGVkIGdldFRvdGFsUGFnZXMoYWxsSWRzOiBEYWZmUHJvZHVjdFsnaWQnXVtdLCBwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIE1hdGguY2VpbChhbGxJZHMubGVuZ3RoL3BhZ2VTaXplKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB0cmltUHJvZHVjdElkc1RvU2luZ2xlUGFnZShhbGxJZHM6IGFueVtdLCBjdXJyZW50UGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgY29uc3QgdGVtcElkcyA9IFsuLi5hbGxJZHNdO1xuICAgIHRlbXBJZHMuc3BsaWNlKDAsIChjdXJyZW50UGFnZS0xKSAqIHBhZ2VTaXplKTtcbiAgICB0ZW1wSWRzLnNwbGljZShwYWdlU2l6ZSwgdGVtcElkcy5sZW5ndGgtcGFnZVNpemUpO1xuXG4gICAgcmV0dXJuIHRlbXBJZHM7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2VuZXJhdGVQYWdlU2l6ZShyZXFJbmZvKSB7XG4gICAgaWYocmVxSW5mby5yZXEucGFyYW1zLm1hcCAmJiByZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgncGFnZVNpemUnKSAmJiByZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgncGFnZVNpemUnKVswXSkge1xuICAgICAgcmV0dXJuIHBhcnNlSW50KHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdwYWdlU2l6ZScpWzBdLCAxMCk7XG4gICAgfVxuICAgIHJldHVybiAxMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRDdXJyZW50UGFnZVBhcmFtKHJlcUluZm8pIHtcbiAgICBpZihyZXFJbmZvLnJlcS5wYXJhbXMubWFwICYmIHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdjdXJyZW50UGFnZScpICYmIHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdjdXJyZW50UGFnZScpWzBdKSB7XG4gICAgICByZXR1cm4gcGFyc2VJbnQocmVxSW5mby5yZXEucGFyYW1zLm1hcC5nZXQoJ2N1cnJlbnRQYWdlJylbMF0sIDEwKTtcbiAgICB9XG4gICAgcmV0dXJuIDE7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export const DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME = 'category';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1uYW1lLmNvbnN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9kcml2ZXIvaW4tbWVtb3J5L3NyYy9jb2xsZWN0aW9uLW5hbWUuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sdUNBQXVDLEdBQUcsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERBRkZfQ0FURUdPUllfSU5fTUVNT1JZX0NPTExFQ1RJT05fTkFNRSA9ICdjYXRlZ29yeSc7XG4iXX0=
@@ -1,7 +1,9 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule, } from '@angular/core';
3
3
  import { DaffCategoryDriver } from '@daffodil/category/driver';
4
+ import { provideDaffInMemoryBackends } from '@daffodil/driver/in-memory';
4
5
  import { DaffInMemoryCategoryService } from './category.service';
6
+ import { DaffInMemoryBackendCategoryService } from '../backend/category.service';
5
7
  import * as i0 from "@angular/core";
6
8
  /**
7
9
  * A module that provides the {@link DaffInMemoryCategoryService} for the {@link DaffCategoryDriver} token.
@@ -15,6 +17,7 @@ export class DaffCategoryInMemoryDriverModule {
15
17
  provide: DaffCategoryDriver,
16
18
  useExisting: DaffInMemoryCategoryService,
17
19
  },
20
+ provideDaffInMemoryBackends(DaffInMemoryBackendCategoryService),
18
21
  ],
19
22
  };
20
23
  }
@@ -30,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
30
33
  ],
31
34
  }]
32
35
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZHJpdmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvZHJpdmVycy9jYXRlZ29yeS1kcml2ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsUUFBUSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRS9ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUVqRTs7R0FFRztBQU1ILE1BQU0sT0FBTyxnQ0FBZ0M7SUFDM0MsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGdDQUFnQztZQUMxQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsV0FBVyxFQUFFLDJCQUEyQjtpQkFDekM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO2lJQVhVLGdDQUFnQztrSUFBaEMsZ0NBQWdDLFlBSHpDLFlBQVk7a0lBR0gsZ0NBQWdDLFlBSHpDLFlBQVk7OzJGQUdILGdDQUFnQztrQkFMNUMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBOZ01vZHVsZSxcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERhZmZDYXRlZ29yeURyaXZlciB9IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeS9kcml2ZXInO1xuXG5pbXBvcnQgeyBEYWZmSW5NZW1vcnlDYXRlZ29yeVNlcnZpY2UgfSBmcm9tICcuL2NhdGVnb3J5LnNlcnZpY2UnO1xuXG4vKipcbiAqIEEgbW9kdWxlIHRoYXQgcHJvdmlkZXMgdGhlIHtAbGluayBEYWZmSW5NZW1vcnlDYXRlZ29yeVNlcnZpY2V9IGZvciB0aGUge0BsaW5rIERhZmZDYXRlZ29yeURyaXZlcn0gdG9rZW4uXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERhZmZDYXRlZ29yeUluTWVtb3J5RHJpdmVyTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYWZmQ2F0ZWdvcnlJbk1lbW9yeURyaXZlck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRGFmZkNhdGVnb3J5SW5NZW1vcnlEcml2ZXJNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IERhZmZDYXRlZ29yeURyaXZlcixcbiAgICAgICAgICB1c2VFeGlzdGluZzogRGFmZkluTWVtb3J5Q2F0ZWdvcnlTZXJ2aWNlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG4iXX0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZHJpdmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvZHJpdmVycy9jYXRlZ29yeS1kcml2ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsUUFBUSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXpFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUVqRjs7R0FFRztBQU1ILE1BQU0sT0FBTyxnQ0FBZ0M7SUFDM0MsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGdDQUFnQztZQUMxQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsV0FBVyxFQUFFLDJCQUEyQjtpQkFDekM7Z0JBQ0QsMkJBQTJCLENBQUMsa0NBQWtDLENBQUM7YUFDaEU7U0FDRixDQUFDO0lBQ0osQ0FBQztpSUFaVSxnQ0FBZ0M7a0lBQWhDLGdDQUFnQyxZQUh6QyxZQUFZO2tJQUdILGdDQUFnQyxZQUh6QyxZQUFZOzsyRkFHSCxnQ0FBZ0M7a0JBTDVDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgTmdNb2R1bGUsXG4gIE1vZHVsZVdpdGhQcm92aWRlcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEYWZmQ2F0ZWdvcnlEcml2ZXIgfSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnkvZHJpdmVyJztcbmltcG9ydCB7IHByb3ZpZGVEYWZmSW5NZW1vcnlCYWNrZW5kcyB9IGZyb20gJ0BkYWZmb2RpbC9kcml2ZXIvaW4tbWVtb3J5JztcblxuaW1wb3J0IHsgRGFmZkluTWVtb3J5Q2F0ZWdvcnlTZXJ2aWNlIH0gZnJvbSAnLi9jYXRlZ29yeS5zZXJ2aWNlJztcbmltcG9ydCB7IERhZmZJbk1lbW9yeUJhY2tlbmRDYXRlZ29yeVNlcnZpY2UgfSBmcm9tICcuLi9iYWNrZW5kL2NhdGVnb3J5LnNlcnZpY2UnO1xuXG4vKipcbiAqIEEgbW9kdWxlIHRoYXQgcHJvdmlkZXMgdGhlIHtAbGluayBEYWZmSW5NZW1vcnlDYXRlZ29yeVNlcnZpY2V9IGZvciB0aGUge0BsaW5rIERhZmZDYXRlZ29yeURyaXZlcn0gdG9rZW4uXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERhZmZDYXRlZ29yeUluTWVtb3J5RHJpdmVyTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYWZmQ2F0ZWdvcnlJbk1lbW9yeURyaXZlck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRGFmZkNhdGVnb3J5SW5NZW1vcnlEcml2ZXJNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IERhZmZDYXRlZ29yeURyaXZlcixcbiAgICAgICAgICB1c2VFeGlzdGluZzogRGFmZkluTWVtb3J5Q2F0ZWdvcnlTZXJ2aWNlLFxuICAgICAgICB9LFxuICAgICAgICBwcm92aWRlRGFmZkluTWVtb3J5QmFja2VuZHMoRGFmZkluTWVtb3J5QmFja2VuZENhdGVnb3J5U2VydmljZSksXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,31 +1,35 @@
1
1
  import { HttpClient, HttpParams, } from '@angular/common/http';
2
2
  import { Injectable } from '@angular/core';
3
+ import { InMemoryBackendConfig } from 'angular-in-memory-web-api';
3
4
  import { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';
5
+ import { DaffInMemoryDriverBase } from '@daffodil/driver/in-memory';
6
+ import { DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME } from '../collection-name.const';
4
7
  import * as i0 from "@angular/core";
5
8
  import * as i1 from "@angular/common/http";
9
+ import * as i2 from "angular-in-memory-web-api";
6
10
  /**
7
11
  * The category in memory driver for mocking the {@link DaffCategoryDriver} with in memory data.
8
12
  *
9
13
  * @inheritdoc
10
14
  */
11
- export class DaffInMemoryCategoryService {
12
- constructor(http) {
15
+ export class DaffInMemoryCategoryService extends DaffInMemoryDriverBase {
16
+ constructor(http, config) {
17
+ super(config, DAFF_CATEGORY_IN_MEMORY_COLLECTION_NAME);
13
18
  this.http = http;
14
- this.url = '/api/category/';
15
19
  }
16
20
  get(categoryRequest) {
17
21
  const params = new HttpParams()
18
22
  .set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)
19
23
  .set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);
20
- return this.http.get(this.url + categoryRequest.id, { params });
24
+ return this.http.get(`${this.url}/${categoryRequest.id}`, { params });
21
25
  }
22
26
  getByUrl(categoryRequest) {
23
27
  const params = new HttpParams()
24
28
  .set('pageSize', categoryRequest.pageSize ? categoryRequest.pageSize.toString() : null)
25
29
  .set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);
26
- return this.http.get(`${this.url}${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });
30
+ return this.http.get(`${this.url}/${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });
27
31
  }
28
- /** @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 }); }
32
+ /** @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 }); }
29
33
  /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryCategoryService, providedIn: 'root' }); }
30
34
  }
31
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffInMemoryCategoryService, decorators: [{
@@ -33,5 +37,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
33
37
  args: [{
34
38
  providedIn: 'root',
35
39
  }]
36
- }], ctorParameters: () => [{ type: i1.HttpClient }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvZHJpdmVycy9jYXRlZ29yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsVUFBVSxHQUNYLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVMzQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRXJFOzs7O0dBSUc7QUFJSCxNQUFNLE9BQU8sMkJBQTJCO0lBR3RDLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFGcEMsUUFBRyxHQUFHLGdCQUFnQixDQUFDO0lBRWdCLENBQUM7SUFFeEMsR0FBRyxDQUFDLGVBQXNDO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFO2FBQzVCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQ3RGLEdBQUcsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFbkcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBMEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsUUFBUSxDQUFDLGVBQXVDO1FBQzlDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFO2FBQzVCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQ3RGLEdBQUcsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFbkcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBMEIsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLDJCQUEyQixDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUM5SCxDQUFDO2lJQW5CVSwyQkFBMkI7cUlBQTNCLDJCQUEyQixjQUYxQixNQUFNOzsyRkFFUCwyQkFBMkI7a0JBSHZDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSHR0cENsaWVudCxcbiAgSHR0cFBhcmFtcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZSxcbiAgRGFmZkNhdGVnb3J5SWRSZXF1ZXN0LFxuICBEYWZmQ2F0ZWdvcnlVcmxSZXF1ZXN0LFxufSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnknO1xuaW1wb3J0IHsgRGFmZkNhdGVnb3J5U2VydmljZUludGVyZmFjZSB9IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeS9kcml2ZXInO1xuaW1wb3J0IHsgZGFmZlVyaVRydW5jYXRlTGVhZGluZ1NsYXNoIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUvcm91dGluZyc7XG5cbi8qKlxuICogVGhlIGNhdGVnb3J5IGluIG1lbW9yeSBkcml2ZXIgZm9yIG1vY2tpbmcgdGhlIHtAbGluayBEYWZmQ2F0ZWdvcnlEcml2ZXJ9IHdpdGggaW4gbWVtb3J5IGRhdGEuXG4gKlxuICogQGluaGVyaXRkb2NcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZJbk1lbW9yeUNhdGVnb3J5U2VydmljZSBpbXBsZW1lbnRzIERhZmZDYXRlZ29yeVNlcnZpY2VJbnRlcmZhY2Uge1xuICB1cmwgPSAnL2FwaS9jYXRlZ29yeS8nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge31cblxuICBnZXQoY2F0ZWdvcnlSZXF1ZXN0OiBEYWZmQ2F0ZWdvcnlJZFJlcXVlc3QpOiBPYnNlcnZhYmxlPERhZmZHZXRDYXRlZ29yeVJlc3BvbnNlPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgLnNldCgncGFnZVNpemUnLCBjYXRlZ29yeVJlcXVlc3QucGFnZVNpemUgPyBjYXRlZ29yeVJlcXVlc3QucGFnZVNpemUudG9TdHJpbmcoKSA6IG51bGwpXG4gICAgICAuc2V0KCdjdXJyZW50UGFnZScsIGNhdGVnb3J5UmVxdWVzdC5jdXJyZW50UGFnZSA/IGNhdGVnb3J5UmVxdWVzdC5jdXJyZW50UGFnZS50b1N0cmluZygpIDogbnVsbCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZT4odGhpcy51cmwgKyBjYXRlZ29yeVJlcXVlc3QuaWQsIHsgcGFyYW1zIH0pO1xuICB9XG5cbiAgZ2V0QnlVcmwoY2F0ZWdvcnlSZXF1ZXN0OiBEYWZmQ2F0ZWdvcnlVcmxSZXF1ZXN0KTogT2JzZXJ2YWJsZTxEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICAgIC5zZXQoJ3BhZ2VTaXplJywgY2F0ZWdvcnlSZXF1ZXN0LnBhZ2VTaXplID8gY2F0ZWdvcnlSZXF1ZXN0LnBhZ2VTaXplLnRvU3RyaW5nKCkgOiBudWxsKVxuICAgICAgLnNldCgnY3VycmVudFBhZ2UnLCBjYXRlZ29yeVJlcXVlc3QuY3VycmVudFBhZ2UgPyBjYXRlZ29yeVJlcXVlc3QuY3VycmVudFBhZ2UudG9TdHJpbmcoKSA6IG51bGwpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RGFmZkdldENhdGVnb3J5UmVzcG9uc2U+KGAke3RoaXMudXJsfSR7ZGFmZlVyaVRydW5jYXRlTGVhZGluZ1NsYXNoKGNhdGVnb3J5UmVxdWVzdC51cmwpfWAsIHsgcGFyYW1zIH0pO1xuICB9XG59XG4iXX0=
40
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.InMemoryBackendConfig }] });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvZHJpdmVycy9jYXRlZ29yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsVUFBVSxHQUNYLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQVNsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUVuRjs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHNCQUFzQjtJQUNyRSxZQUNVLElBQWdCLEVBQ3hCLE1BQTZCO1FBRTdCLEtBQUssQ0FBQyxNQUFNLEVBQUUsdUNBQXVDLENBQUMsQ0FBQztRQUgvQyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBSTFCLENBQUM7SUFFRCxHQUFHLENBQUMsZUFBc0M7UUFDeEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUU7YUFDNUIsR0FBRyxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7YUFDdEYsR0FBRyxDQUFDLGFBQWEsRUFBRSxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUEwQixHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsUUFBUSxDQUFDLGVBQXVDO1FBQzlDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFO2FBQzVCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQ3RGLEdBQUcsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFbkcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBMEIsR0FBRyxJQUFJLENBQUMsR0FBRyxJQUFJLDJCQUEyQixDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUMvSCxDQUFDO2lJQXRCVSwyQkFBMkI7cUlBQTNCLDJCQUEyQixjQUYxQixNQUFNOzsyRkFFUCwyQkFBMkI7a0JBSHZDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSHR0cENsaWVudCxcbiAgSHR0cFBhcmFtcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5NZW1vcnlCYWNrZW5kQ29uZmlnIH0gZnJvbSAnYW5ndWxhci1pbi1tZW1vcnktd2ViLWFwaSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIERhZmZHZXRDYXRlZ29yeVJlc3BvbnNlLFxuICBEYWZmQ2F0ZWdvcnlJZFJlcXVlc3QsXG4gIERhZmZDYXRlZ29yeVVybFJlcXVlc3QsXG59IGZyb20gJ0BkYWZmb2RpbC9jYXRlZ29yeSc7XG5pbXBvcnQgeyBEYWZmQ2F0ZWdvcnlTZXJ2aWNlSW50ZXJmYWNlIH0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5L2RyaXZlcic7XG5pbXBvcnQgeyBkYWZmVXJpVHJ1bmNhdGVMZWFkaW5nU2xhc2ggfSBmcm9tICdAZGFmZm9kaWwvY29yZS9yb3V0aW5nJztcbmltcG9ydCB7IERhZmZJbk1lbW9yeURyaXZlckJhc2UgfSBmcm9tICdAZGFmZm9kaWwvZHJpdmVyL2luLW1lbW9yeSc7XG5cbmltcG9ydCB7IERBRkZfQ0FURUdPUllfSU5fTUVNT1JZX0NPTExFQ1RJT05fTkFNRSB9IGZyb20gJy4uL2NvbGxlY3Rpb24tbmFtZS5jb25zdCc7XG5cbi8qKlxuICogVGhlIGNhdGVnb3J5IGluIG1lbW9yeSBkcml2ZXIgZm9yIG1vY2tpbmcgdGhlIHtAbGluayBEYWZmQ2F0ZWdvcnlEcml2ZXJ9IHdpdGggaW4gbWVtb3J5IGRhdGEuXG4gKlxuICogQGluaGVyaXRkb2NcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZJbk1lbW9yeUNhdGVnb3J5U2VydmljZSBleHRlbmRzIERhZmZJbk1lbW9yeURyaXZlckJhc2UgaW1wbGVtZW50cyBEYWZmQ2F0ZWdvcnlTZXJ2aWNlSW50ZXJmYWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIGNvbmZpZzogSW5NZW1vcnlCYWNrZW5kQ29uZmlnLFxuICApIHtcbiAgICBzdXBlcihjb25maWcsIERBRkZfQ0FURUdPUllfSU5fTUVNT1JZX0NPTExFQ1RJT05fTkFNRSk7XG4gIH1cblxuICBnZXQoY2F0ZWdvcnlSZXF1ZXN0OiBEYWZmQ2F0ZWdvcnlJZFJlcXVlc3QpOiBPYnNlcnZhYmxlPERhZmZHZXRDYXRlZ29yeVJlc3BvbnNlPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgLnNldCgncGFnZVNpemUnLCBjYXRlZ29yeVJlcXVlc3QucGFnZVNpemUgPyBjYXRlZ29yeVJlcXVlc3QucGFnZVNpemUudG9TdHJpbmcoKSA6IG51bGwpXG4gICAgICAuc2V0KCdjdXJyZW50UGFnZScsIGNhdGVnb3J5UmVxdWVzdC5jdXJyZW50UGFnZSA/IGNhdGVnb3J5UmVxdWVzdC5jdXJyZW50UGFnZS50b1N0cmluZygpIDogbnVsbCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZT4oYCR7dGhpcy51cmx9LyR7Y2F0ZWdvcnlSZXF1ZXN0LmlkfWAsIHsgcGFyYW1zIH0pO1xuICB9XG5cbiAgZ2V0QnlVcmwoY2F0ZWdvcnlSZXF1ZXN0OiBEYWZmQ2F0ZWdvcnlVcmxSZXF1ZXN0KTogT2JzZXJ2YWJsZTxEYWZmR2V0Q2F0ZWdvcnlSZXNwb25zZT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICAgIC5zZXQoJ3BhZ2VTaXplJywgY2F0ZWdvcnlSZXF1ZXN0LnBhZ2VTaXplID8gY2F0ZWdvcnlSZXF1ZXN0LnBhZ2VTaXplLnRvU3RyaW5nKCkgOiBudWxsKVxuICAgICAgLnNldCgnY3VycmVudFBhZ2UnLCBjYXRlZ29yeVJlcXVlc3QuY3VycmVudFBhZ2UgPyBjYXRlZ29yeVJlcXVlc3QuY3VycmVudFBhZ2UudG9TdHJpbmcoKSA6IG51bGwpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RGFmZkdldENhdGVnb3J5UmVzcG9uc2U+KGAke3RoaXMudXJsfS8ke2RhZmZVcmlUcnVuY2F0ZUxlYWRpbmdTbGFzaChjYXRlZ29yeVJlcXVlc3QudXJsKX1gLCB7IHBhcmFtcyB9KTtcbiAgfVxufVxuIl19
@@ -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
10
  import { DaffCategoryDriver } from '@daffodil/category/driver';
8
- import { STATUS } from 'angular-in-memory-web-api';
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 + categoryRequest.id, { params });
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}${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });
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,36 @@ 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
+ {
165
+ provide: DaffCategoryDriver,
166
+ useExisting: DaffInMemoryCategoryService,
167
+ },
168
+ provideDaffInMemoryBackends(DaffInMemoryBackendCategoryService),
169
+ ],
170
+ };
171
+ }
172
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
173
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
174
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
175
+ }
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffCategoryInMemoryDriverModule, decorators: [{
177
+ type: NgModule,
178
+ args: [{
179
+ imports: [
180
+ CommonModule,
181
+ ],
182
+ }]
183
+ }] });
178
184
 
179
185
  /**
180
186
  * 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 { DaffCategoryDriver } 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 {\n provide: DaffCategoryDriver,\n useExisting: DaffInMemoryCategoryService,\n },\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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"}
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@daffodil/category","nx":{"targets":{"build":{"outputs":["{workspaceRoot}/dist/category"]}}},"version":"0.77.0","description":"An ecommerce categories package that has multi-platform support and state management features.","repository":{"type":"git","url":"https://github.com/graycoreio/daffodil"},"author":"Graycore LLC","license":"MIT","bugs":{"url":"https://github.com/graycoreio/daffodil/issues"},"publishConfig":{"directory":"../../dist/category"},"homepage":"https://github.com/graycoreio/daffodil","peerDependencies":{"@angular/common":"^18.2.2","@angular/core":"^18.2.2","@daffodil/core":"0.77.0","@daffodil/product":"0.77.0","@ngrx/effects":"^18.0.2","@ngrx/entity":"^18.0.2","@ngrx/store":"^18.0.2","rxjs":"7.8.1"},"optionalDependencies":{"@apollo/client":"^3.0.0","@daffodil/driver":"0.77.0","angular-in-memory-web-api":"^0.18.0","apollo-angular":"^7.1.2","@faker-js/faker":"^7.6.0"},"module":"fesm2022/daffodil-category.mjs","typings":"index.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2022":"./esm2022/daffodil-category.mjs","esm":"./esm2022/daffodil-category.mjs","default":"./fesm2022/daffodil-category.mjs"},"./driver":{"types":"./driver/index.d.ts","esm2022":"./esm2022/driver/daffodil-category-driver.mjs","esm":"./esm2022/driver/daffodil-category-driver.mjs","default":"./fesm2022/daffodil-category-driver.mjs"},"./routing":{"types":"./routing/index.d.ts","esm2022":"./esm2022/routing/daffodil-category-routing.mjs","esm":"./esm2022/routing/daffodil-category-routing.mjs","default":"./fesm2022/daffodil-category-routing.mjs"},"./state":{"types":"./state/index.d.ts","esm2022":"./esm2022/state/daffodil-category-state.mjs","esm":"./esm2022/state/daffodil-category-state.mjs","default":"./fesm2022/daffodil-category-state.mjs"},"./testing":{"types":"./testing/index.d.ts","esm2022":"./esm2022/testing/daffodil-category-testing.mjs","esm":"./esm2022/testing/daffodil-category-testing.mjs","default":"./fesm2022/daffodil-category-testing.mjs"},"./driver/in-memory":{"types":"./driver/in-memory/index.d.ts","esm2022":"./esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs","esm":"./esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs","default":"./fesm2022/daffodil-category-driver-in-memory.mjs"},"./driver/magento":{"types":"./driver/magento/index.d.ts","esm2022":"./esm2022/driver/magento/daffodil-category-driver-magento.mjs","esm":"./esm2022/driver/magento/daffodil-category-driver-magento.mjs","default":"./fesm2022/daffodil-category-driver-magento.mjs"},"./driver/testing":{"types":"./driver/testing/index.d.ts","esm2022":"./esm2022/driver/testing/daffodil-category-driver-testing.mjs","esm":"./esm2022/driver/testing/daffodil-category-driver-testing.mjs","default":"./fesm2022/daffodil-category-driver-testing.mjs"},"./state/testing":{"types":"./state/testing/index.d.ts","esm2022":"./esm2022/state/testing/daffodil-category-state-testing.mjs","esm":"./esm2022/state/testing/daffodil-category-state-testing.mjs","default":"./fesm2022/daffodil-category-state-testing.mjs"},"./driver/magento/testing":{"types":"./driver/magento/testing/index.d.ts","esm2022":"./esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs","esm":"./esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs","default":"./fesm2022/daffodil-category-driver-magento-testing.mjs"}},"sideEffects":false,"dependencies":{"tslib":"^2.3.0"}}
1
+ {"name":"@daffodil/category","nx":{"targets":{"build":{"outputs":["{workspaceRoot}/dist/category"]}}},"version":"0.78.0","description":"An ecommerce categories package that has multi-platform support and state management features.","repository":{"type":"git","url":"https://github.com/graycoreio/daffodil"},"author":"Graycore LLC","license":"MIT","bugs":{"url":"https://github.com/graycoreio/daffodil/issues"},"publishConfig":{"directory":"../../dist/category"},"homepage":"https://github.com/graycoreio/daffodil","peerDependencies":{"@angular/common":"^18.2.2","@angular/core":"^18.2.2","@daffodil/core":"0.78.0","@daffodil/product":"0.78.0","@ngrx/effects":"^18.0.2","@ngrx/entity":"^18.0.2","@ngrx/store":"^18.0.2","rxjs":"7.8.1"},"optionalDependencies":{"@apollo/client":"^3.0.0","@daffodil/driver":"0.78.0","angular-in-memory-web-api":"^0.18.0","apollo-angular":"^7.1.2","@faker-js/faker":"^7.6.0"},"module":"fesm2022/daffodil-category.mjs","typings":"index.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2022":"./esm2022/daffodil-category.mjs","esm":"./esm2022/daffodil-category.mjs","default":"./fesm2022/daffodil-category.mjs"},"./driver":{"types":"./driver/index.d.ts","esm2022":"./esm2022/driver/daffodil-category-driver.mjs","esm":"./esm2022/driver/daffodil-category-driver.mjs","default":"./fesm2022/daffodil-category-driver.mjs"},"./routing":{"types":"./routing/index.d.ts","esm2022":"./esm2022/routing/daffodil-category-routing.mjs","esm":"./esm2022/routing/daffodil-category-routing.mjs","default":"./fesm2022/daffodil-category-routing.mjs"},"./state":{"types":"./state/index.d.ts","esm2022":"./esm2022/state/daffodil-category-state.mjs","esm":"./esm2022/state/daffodil-category-state.mjs","default":"./fesm2022/daffodil-category-state.mjs"},"./testing":{"types":"./testing/index.d.ts","esm2022":"./esm2022/testing/daffodil-category-testing.mjs","esm":"./esm2022/testing/daffodil-category-testing.mjs","default":"./fesm2022/daffodil-category-testing.mjs"},"./driver/in-memory":{"types":"./driver/in-memory/index.d.ts","esm2022":"./esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs","esm":"./esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs","default":"./fesm2022/daffodil-category-driver-in-memory.mjs"},"./driver/magento":{"types":"./driver/magento/index.d.ts","esm2022":"./esm2022/driver/magento/daffodil-category-driver-magento.mjs","esm":"./esm2022/driver/magento/daffodil-category-driver-magento.mjs","default":"./fesm2022/daffodil-category-driver-magento.mjs"},"./driver/testing":{"types":"./driver/testing/index.d.ts","esm2022":"./esm2022/driver/testing/daffodil-category-driver-testing.mjs","esm":"./esm2022/driver/testing/daffodil-category-driver-testing.mjs","default":"./fesm2022/daffodil-category-driver-testing.mjs"},"./state/testing":{"types":"./state/testing/index.d.ts","esm2022":"./esm2022/state/testing/daffodil-category-state-testing.mjs","esm":"./esm2022/state/testing/daffodil-category-state-testing.mjs","default":"./fesm2022/daffodil-category-state-testing.mjs"},"./driver/magento/testing":{"types":"./driver/magento/testing/index.d.ts","esm2022":"./esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs","esm":"./esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs","default":"./fesm2022/daffodil-category-driver-magento-testing.mjs"}},"sideEffects":false,"dependencies":{"tslib":"^2.3.0"}}