@daffodil/category 0.80.0 → 0.81.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/fesm2022/daffodil-category-driver-in-memory.mjs +10 -10
- package/fesm2022/daffodil-category-driver-in-memory.mjs.map +1 -1
- package/fesm2022/daffodil-category-driver-magento-testing.mjs +3 -3
- package/fesm2022/daffodil-category-driver-magento-testing.mjs.map +1 -1
- package/fesm2022/daffodil-category-driver-magento.mjs +21 -19
- package/fesm2022/daffodil-category-driver-magento.mjs.map +1 -1
- package/fesm2022/daffodil-category-driver-testing.mjs +7 -7
- package/fesm2022/daffodil-category-driver-testing.mjs.map +1 -1
- package/fesm2022/daffodil-category-routing.mjs +19 -41
- package/fesm2022/daffodil-category-routing.mjs.map +1 -1
- package/fesm2022/daffodil-category-state-testing.mjs +7 -7
- package/fesm2022/daffodil-category-state-testing.mjs.map +1 -1
- package/fesm2022/daffodil-category-state.mjs +26 -41
- package/fesm2022/daffodil-category-state.mjs.map +1 -1
- package/fesm2022/daffodil-category-testing.mjs +9 -9
- package/fesm2022/daffodil-category-testing.mjs.map +1 -1
- package/fesm2022/daffodil-category.mjs.map +1 -1
- package/package.json +1 -1
- package/routing/resolvers/public_api.d.ts +0 -1
- package/state/actions/category-page-filter.actions.d.ts +1 -13
- package/esm2022/daffodil-category.mjs +0 -5
- package/esm2022/driver/daffodil-category-driver.mjs +0 -5
- package/esm2022/driver/in-memory/backend/category.service.mjs +0 -117
- package/esm2022/driver/in-memory/backend/public_api.mjs +0 -2
- package/esm2022/driver/in-memory/collection-name.const.mjs +0 -2
- package/esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs +0 -5
- package/esm2022/driver/in-memory/drivers/category-driver.module.mjs +0 -33
- package/esm2022/driver/in-memory/drivers/category.service.mjs +0 -41
- package/esm2022/driver/in-memory/drivers/public_api.mjs +0 -3
- package/esm2022/driver/in-memory/index.mjs +0 -2
- package/esm2022/driver/in-memory/public_api.mjs +0 -3
- package/esm2022/driver/index.mjs +0 -2
- package/esm2022/driver/interfaces/category-service.interface.mjs +0 -9
- package/esm2022/driver/magento/category-driver.module.mjs +0 -46
- package/esm2022/driver/magento/category.service.mjs +0 -138
- package/esm2022/driver/magento/config/default.mjs +0 -9
- package/esm2022/driver/magento/daffodil-category-driver-magento.mjs +0 -5
- package/esm2022/driver/magento/fragments/public_api.mjs +0 -2
- package/esm2022/driver/magento/fragments/token.mjs +0 -22
- package/esm2022/driver/magento/index.mjs +0 -2
- package/esm2022/driver/magento/interfaces/config.interface.mjs +0 -13
- package/esm2022/driver/magento/interfaces/public_api.mjs +0 -2
- package/esm2022/driver/magento/models/category.mjs +0 -2
- package/esm2022/driver/magento/models/complete-category-response.mjs +0 -2
- package/esm2022/driver/magento/models/get-category-and-products.interface.mjs +0 -2
- package/esm2022/driver/magento/models/public_api.mjs +0 -2
- package/esm2022/driver/magento/models/requests/custom-metadata-attribute.mjs +0 -2
- package/esm2022/driver/magento/models/requests/get-products-by-categories-request.mjs +0 -2
- package/esm2022/driver/magento/models/url-resolver-response.mjs +0 -2
- package/esm2022/driver/magento/models/url-resolver.mjs +0 -2
- package/esm2022/driver/magento/public_api.mjs +0 -10
- package/esm2022/driver/magento/queries/fragments/category-tree.mjs +0 -22
- package/esm2022/driver/magento/queries/fragments/public_api.mjs +0 -2
- package/esm2022/driver/magento/queries/get-category-and-products.mjs +0 -40
- package/esm2022/driver/magento/queries/public_api.mjs +0 -4
- package/esm2022/driver/magento/queries/resolve-url.mjs +0 -17
- package/esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs +0 -5
- package/esm2022/driver/magento/testing/factories/category.factory.mjs +0 -36
- package/esm2022/driver/magento/testing/factories/public_api.mjs +0 -2
- package/esm2022/driver/magento/testing/index.mjs +0 -2
- package/esm2022/driver/magento/testing/public_api.mjs +0 -2
- package/esm2022/driver/magento/transformers/applied-filter-transformer.service.mjs +0 -32
- package/esm2022/driver/magento/transformers/category-page-config-transformer.service.mjs +0 -21
- package/esm2022/driver/magento/transformers/category-response-transform.service.mjs +0 -34
- package/esm2022/driver/magento/transformers/category-transformer.service.mjs +0 -45
- package/esm2022/driver/magento/transformers/public_api.mjs +0 -5
- package/esm2022/driver/magento/transformers/pure/add-metadata-types-to-aggregates.mjs +0 -16
- package/esm2022/driver/magento/transformers/truncate-url.mjs +0 -6
- package/esm2022/driver/magento/transforms/public_api.mjs +0 -3
- package/esm2022/driver/magento/transforms/token.mjs +0 -22
- package/esm2022/driver/magento/transforms/type.mjs +0 -2
- package/esm2022/driver/public_api.mjs +0 -2
- package/esm2022/driver/testing/daffodil-category-driver-testing.mjs +0 -5
- package/esm2022/driver/testing/drivers/category-driver.module.mjs +0 -30
- package/esm2022/driver/testing/drivers/category.service.mjs +0 -42
- package/esm2022/driver/testing/drivers/public_api.mjs +0 -3
- package/esm2022/driver/testing/index.mjs +0 -2
- package/esm2022/driver/testing/public_api.mjs +0 -2
- package/esm2022/index.mjs +0 -2
- package/esm2022/models/category-breadcrumb.mjs +0 -2
- package/esm2022/models/category-page-metadata.mjs +0 -2
- package/esm2022/models/category-request.mjs +0 -11
- package/esm2022/models/category.mjs +0 -2
- package/esm2022/models/generic-category.mjs +0 -2
- package/esm2022/models/get-category-response.mjs +0 -2
- package/esm2022/models/public_api.mjs +0 -2
- package/esm2022/public_api.mjs +0 -2
- package/esm2022/routing/daffodil-category-routing.mjs +0 -5
- package/esm2022/routing/effects/collection-route.effects.mjs +0 -21
- package/esm2022/routing/index.mjs +0 -2
- package/esm2022/routing/injection-tokens/public_api.mjs +0 -2
- package/esm2022/routing/injection-tokens/request/builder.token.mjs +0 -13
- package/esm2022/routing/injection-tokens/request/builders.token.mjs +0 -25
- package/esm2022/routing/module.mjs +0 -73
- package/esm2022/routing/public_api.mjs +0 -5
- package/esm2022/routing/resolvers/category-page/category-page.resolver.mjs +0 -25
- package/esm2022/routing/resolvers/category-page-id/category-page-id.resolver.mjs +0 -43
- package/esm2022/routing/resolvers/category-page-url/category-page-url.resolver.mjs +0 -38
- package/esm2022/routing/resolvers/public_api.mjs +0 -4
- package/esm2022/routing/services/public_api.mjs +0 -2
- package/esm2022/routing/services/url-request-builder.service.mjs +0 -35
- package/esm2022/state/actions/category-page-filter.actions.mjs +0 -114
- package/esm2022/state/actions/category-page.actions.mjs +0 -59
- package/esm2022/state/actions/category.actions.mjs +0 -43
- package/esm2022/state/category-state.module.mjs +0 -33
- package/esm2022/state/daffodil-category-state.mjs +0 -5
- package/esm2022/state/effects/category-page-metadata.effects.mjs +0 -55
- package/esm2022/state/effects/category-page.effects.mjs +0 -37
- package/esm2022/state/effects/category.effects.mjs +0 -30
- package/esm2022/state/facades/collection/facade.mjs +0 -20
- package/esm2022/state/facades/page/category-facade.interface.mjs +0 -2
- package/esm2022/state/facades/page/category.facade.mjs +0 -52
- package/esm2022/state/facades/public_api.mjs +0 -3
- package/esm2022/state/index.mjs +0 -2
- package/esm2022/state/injection-tokens/error-matcher.token.mjs +0 -13
- package/esm2022/state/injection-tokens/public_api.mjs +0 -2
- package/esm2022/state/product-state.module.mjs +0 -27
- package/esm2022/state/public_api.mjs +0 -10
- package/esm2022/state/reducers/category/category-reducer-state.interface.mjs +0 -2
- package/esm2022/state/reducers/category/category.reducer.mjs +0 -40
- package/esm2022/state/reducers/category-entities/category-entities-adapter.mjs +0 -5
- package/esm2022/state/reducers/category-entities/category-entities.reducer.mjs +0 -19
- package/esm2022/state/reducers/category-reducers.interface.mjs +0 -2
- package/esm2022/state/reducers/category-reducers.mjs +0 -12
- package/esm2022/state/reducers/category-store-feature-key.mjs +0 -5
- package/esm2022/state/reducers/page-metadata/reducer.mjs +0 -57
- package/esm2022/state/reducers/page-metadata/state.interface.mjs +0 -2
- package/esm2022/state/reducers/product-reducers.mjs +0 -9
- package/esm2022/state/reducers/product.reducer.mjs +0 -30
- package/esm2022/state/reducers/public_api.mjs +0 -7
- package/esm2022/state/reducers/token/extra.token.mjs +0 -22
- package/esm2022/state/reducers/token/public_api.mjs +0 -2
- package/esm2022/state/reducers/token/reducers.token.mjs +0 -25
- package/esm2022/state/selectors/category-entities/category-entities.selector.mjs +0 -29
- package/esm2022/state/selectors/category-feature.selector.mjs +0 -12
- package/esm2022/state/selectors/category-page/category-page.selector.mjs +0 -29
- package/esm2022/state/selectors/category.selector.mjs +0 -42
- package/esm2022/state/selectors/collection/selectors.mjs +0 -10
- package/esm2022/state/testing/category-testing.module.mjs +0 -26
- package/esm2022/state/testing/daffodil-category-state-testing.mjs +0 -5
- package/esm2022/state/testing/index.mjs +0 -2
- package/esm2022/state/testing/mock-category-facade.mjs +0 -42
- package/esm2022/state/testing/public_api.mjs +0 -3
- package/esm2022/testing/daffodil-category-testing.mjs +0 -5
- package/esm2022/testing/factories/category-breadcrumb.factory.mjs +0 -29
- package/esm2022/testing/factories/category-page-metadata.factory.mjs +0 -29
- package/esm2022/testing/factories/category.factory.mjs +0 -64
- package/esm2022/testing/factories/public_api.mjs +0 -4
- package/esm2022/testing/helpers/category-helper.mjs +0 -10
- package/esm2022/testing/index.mjs +0 -2
- package/esm2022/testing/public_api.mjs +0 -4
- package/routing/resolvers/category-page/category-page.resolver.d.ts +0 -18
@@ -36,10 +36,10 @@ class DaffInMemoryCategoryService extends DaffInMemoryDriverBase {
|
|
36
36
|
.set('currentPage', categoryRequest.currentPage ? categoryRequest.currentPage.toString() : null);
|
37
37
|
return this.http.get(`${this.url}/${daffUriTruncateLeadingSlash(categoryRequest.url)}`, { params });
|
38
38
|
}
|
39
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
40
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
39
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffInMemoryCategoryService, deps: [{ token: i1.HttpClient }, { token: i2.InMemoryBackendConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
40
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffInMemoryCategoryService, providedIn: 'root' }); }
|
41
41
|
}
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffInMemoryCategoryService, decorators: [{
|
43
43
|
type: Injectable,
|
44
44
|
args: [{
|
45
45
|
providedIn: 'root',
|
@@ -143,10 +143,10 @@ class DaffInMemoryBackendCategoryService {
|
|
143
143
|
}
|
144
144
|
return 1;
|
145
145
|
}
|
146
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
147
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
146
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffInMemoryBackendCategoryService, deps: [{ token: i1$1.DaffCategoryFactory }, { token: i1$1.DaffCategoryPageMetadataFactory }, { token: i2$1.DaffInMemoryBackendProductService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
147
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffInMemoryBackendCategoryService, providedIn: 'root' }); }
|
148
148
|
}
|
149
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffInMemoryBackendCategoryService, decorators: [{
|
150
150
|
type: Injectable,
|
151
151
|
args: [{
|
152
152
|
providedIn: 'root',
|
@@ -166,11 +166,11 @@ class DaffCategoryInMemoryDriverModule {
|
|
166
166
|
],
|
167
167
|
};
|
168
168
|
}
|
169
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
170
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
171
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
169
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryInMemoryDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
170
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
|
171
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryInMemoryDriverModule, imports: [CommonModule] }); }
|
172
172
|
}
|
173
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryInMemoryDriverModule, decorators: [{
|
174
174
|
type: NgModule,
|
175
175
|
args: [{
|
176
176
|
imports: [
|
@@ -1 +1 @@
|
|
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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"}
|
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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"}
|
@@ -25,10 +25,10 @@ class DaffCategoryDriverMagentoCategoryFactory extends DaffModelFactory {
|
|
25
25
|
constructor() {
|
26
26
|
super(MockMagentoCategory);
|
27
27
|
}
|
28
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
29
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
28
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryDriverMagentoCategoryFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
29
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryDriverMagentoCategoryFactory, providedIn: 'root' }); }
|
30
30
|
}
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryDriverMagentoCategoryFactory, decorators: [{
|
32
32
|
type: Injectable,
|
33
33
|
args: [{
|
34
34
|
providedIn: 'root',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-driver-magento-testing.mjs","sources":["../../../libs/category/driver/magento/testing/src/factories/category.factory.ts","../../../libs/category/driver/magento/testing/src/daffodil-category-driver-magento-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { MagentoCategory } from '@daffodil/category/driver/magento';\nimport { DaffModelFactory } from '@daffodil/core/testing';\n\nclass MockMagentoCategory implements MagentoCategory {\n __typename = 'CategoryTree';\n uid = faker.random.alphaNumeric(10);\n url_path = faker.random.word();\n url_suffix = '.html';\n canonical_url = faker.internet.url();\n name? = faker.random.word();\n description? = faker.random.words(40);\n meta_title? = faker.random.words(2);\n meta_description? = faker.random.words(40);\n breadcrumbs? = [];\n level? = faker.datatype.number(15);\n children_count? = faker.datatype.number(15);\n products? = { items: []};\n children?: MagentoCategory[] = [];\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryDriverMagentoCategoryFactory extends DaffModelFactory<MagentoCategory> {\n constructor(){\n super(MockMagentoCategory);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAMA,MAAM,mBAAmB,CAAA;AAAzB,IAAA,WAAA,GAAA;QACE,IAAU,CAAA,UAAA,GAAG,cAAc
|
1
|
+
{"version":3,"file":"daffodil-category-driver-magento-testing.mjs","sources":["../../../libs/category/driver/magento/testing/src/factories/category.factory.ts","../../../libs/category/driver/magento/testing/src/daffodil-category-driver-magento-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { MagentoCategory } from '@daffodil/category/driver/magento';\nimport { DaffModelFactory } from '@daffodil/core/testing';\n\nclass MockMagentoCategory implements MagentoCategory {\n __typename = 'CategoryTree';\n uid = faker.random.alphaNumeric(10);\n url_path = faker.random.word();\n url_suffix = '.html';\n canonical_url = faker.internet.url();\n name? = faker.random.word();\n description? = faker.random.words(40);\n meta_title? = faker.random.words(2);\n meta_description? = faker.random.words(40);\n breadcrumbs? = [];\n level? = faker.datatype.number(15);\n children_count? = faker.datatype.number(15);\n products? = { items: []};\n children?: MagentoCategory[] = [];\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryDriverMagentoCategoryFactory extends DaffModelFactory<MagentoCategory> {\n constructor(){\n super(MockMagentoCategory);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAMA,MAAM,mBAAmB,CAAA;AAAzB,IAAA,WAAA,GAAA;QACE,IAAU,CAAA,UAAA,GAAG,cAAc;QAC3B,IAAG,CAAA,GAAA,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;AACnC,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAC9B,IAAU,CAAA,UAAA,GAAG,OAAO;AACpB,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;AACpC,QAAA,IAAA,CAAA,IAAI,GAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAC3B,IAAW,CAAA,WAAA,GAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAU,CAAA,UAAA,GAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACnC,IAAgB,CAAA,gBAAA,GAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,IAAW,CAAA,WAAA,GAAK,EAAE;QAClB,IAAK,CAAA,KAAA,GAAK,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,IAAc,CAAA,cAAA,GAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;AAC3C,QAAA,IAAA,CAAA,QAAQ,GAAK,EAAE,KAAK,EAAE,EAAE,EAAC;QACzB,IAAQ,CAAA,QAAA,GAAuB,EAAE;;AAClC;AAKK,MAAO,wCAAyC,SAAQ,gBAAiC,CAAA;AAC7F,IAAA,WAAA,GAAA;QACE,KAAK,CAAC,mBAAmB,CAAC;;iIAFjB,wCAAwC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAxC,uBAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wCAAwC,cAFvC,MAAM,EAAA,CAAA,CAAA;;2FAEP,wCAAwC,EAAA,UAAA,EAAA,CAAA;kBAHpD,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACzBD;;AAEG;;;;"}
|
@@ -25,6 +25,7 @@ token: MAGENTO_CATEGORY_EXTRA_FRAGMENTS,
|
|
25
25
|
*
|
26
26
|
* See {@link MAGENTO_CATEGORY_EXTRA_FRAGMENTS}.
|
27
27
|
*
|
28
|
+
* @example
|
28
29
|
* ```ts
|
29
30
|
* providers: [
|
30
31
|
* ...magentoProvideCategoryExtraFragments(
|
@@ -149,10 +150,10 @@ class DaffMagentoAppliedFiltersTransformService {
|
|
149
150
|
...this.productFilterRequestsTransformer.transform(daffFilters),
|
150
151
|
};
|
151
152
|
}
|
152
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
153
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
153
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoAppliedFiltersTransformService, deps: [{ token: i1.MagentoProductAppliedFiltersTransformService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
154
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoAppliedFiltersTransformService, providedIn: 'root' }); }
|
154
155
|
}
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoAppliedFiltersTransformService, decorators: [{
|
156
157
|
type: Injectable,
|
157
158
|
args: [{
|
158
159
|
providedIn: 'root',
|
@@ -167,10 +168,10 @@ class DaffMagentoCategoryPageConfigTransformerService {
|
|
167
168
|
id: categoryResponse.category.uid,
|
168
169
|
};
|
169
170
|
}
|
170
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
171
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
171
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryPageConfigTransformerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
172
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryPageConfigTransformerService, providedIn: 'root' }); }
|
172
173
|
}
|
173
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryPageConfigTransformerService, decorators: [{
|
174
175
|
type: Injectable,
|
175
176
|
args: [{
|
176
177
|
providedIn: 'root',
|
@@ -188,6 +189,7 @@ token: MAGENTO_CATEGORY_EXTRA_TRANSFORMS,
|
|
188
189
|
*
|
189
190
|
* See {@link MAGENTO_CATEGORY_EXTRA_TRANSFORMS}.
|
190
191
|
*
|
192
|
+
* @example
|
191
193
|
* ```ts
|
192
194
|
* providers: [
|
193
195
|
* ...magentoProvideCategoryExtraTransforms(
|
@@ -227,10 +229,10 @@ class DaffMagentoCategoryTransformerService {
|
|
227
229
|
url: `/${breadcrumb.category_url_path}${category.url_suffix}`,
|
228
230
|
};
|
229
231
|
}
|
230
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
231
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
232
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryTransformerService, deps: [{ token: MAGENTO_CATEGORY_EXTRA_TRANSFORMS }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
233
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryTransformerService, providedIn: 'root' }); }
|
232
234
|
}
|
233
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
235
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryTransformerService, decorators: [{
|
234
236
|
type: Injectable,
|
235
237
|
args: [{
|
236
238
|
providedIn: 'root',
|
@@ -254,10 +256,10 @@ class DaffMagentoCategoryResponseTransformService {
|
|
254
256
|
products: completeCategory.products.map(product => this.magentoProductsTransform(product, mediaUrl)),
|
255
257
|
};
|
256
258
|
}
|
257
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
258
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
259
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryResponseTransformService, deps: [{ token: DaffMagentoCategoryTransformerService }, { token: DaffMagentoCategoryPageConfigTransformerService }, { token: DAFF_PRODUCT_MAGENTO_PRODUCT_TRANSFORM }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
260
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryResponseTransformService, providedIn: 'root' }); }
|
259
261
|
}
|
260
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
262
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryResponseTransformService, decorators: [{
|
261
263
|
type: Injectable,
|
262
264
|
args: [{
|
263
265
|
providedIn: 'root',
|
@@ -380,10 +382,10 @@ class DaffMagentoCategoryService {
|
|
380
382
|
};
|
381
383
|
return this.magentoCategoryResponseTransformer.transform(completeCategory, mediaUrl);
|
382
384
|
}
|
383
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
384
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
385
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryService, deps: [{ token: i1$1.Apollo }, { token: DaffMagentoCategoryResponseTransformService }, { token: DaffMagentoAppliedFiltersTransformService }, { token: MAGENTO_CATEGORY_CONFIG_TOKEN }, { token: MAGENTO_PRODUCT_CONFIG_TOKEN }, { token: DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_FRAGMENTS }, { token: DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS }, { token: MAGENTO_CATEGORY_EXTRA_FRAGMENTS }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
386
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryService, providedIn: 'root' }); }
|
385
387
|
}
|
386
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
388
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffMagentoCategoryService, decorators: [{
|
387
389
|
type: Injectable,
|
388
390
|
args: [{
|
389
391
|
providedIn: 'root',
|
@@ -424,11 +426,11 @@ class DaffCategoryMagentoDriverModule {
|
|
424
426
|
],
|
425
427
|
};
|
426
428
|
}
|
427
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
428
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
429
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
429
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryMagentoDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
430
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryMagentoDriverModule, imports: [CommonModule] }); }
|
431
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryMagentoDriverModule, imports: [CommonModule] }); }
|
430
432
|
}
|
431
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
433
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryMagentoDriverModule, decorators: [{
|
432
434
|
type: NgModule,
|
433
435
|
args: [{
|
434
436
|
imports: [
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-driver-magento.mjs","sources":["../../../libs/category/driver/magento/src/fragments/token.ts","../../../libs/category/driver/magento/src/transformers/truncate-url.ts","../../../libs/category/driver/magento/src/config/default.ts","../../../libs/category/driver/magento/src/interfaces/config.interface.ts","../../../libs/category/driver/magento/src/queries/resolve-url.ts","../../../libs/category/driver/magento/src/queries/fragments/category-tree.ts","../../../libs/category/driver/magento/src/queries/get-category-and-products.ts","../../../libs/category/driver/magento/src/transformers/applied-filter-transformer.service.ts","../../../libs/category/driver/magento/src/transformers/category-page-config-transformer.service.ts","../../../libs/category/driver/magento/src/transforms/token.ts","../../../libs/category/driver/magento/src/transformers/category-transformer.service.ts","../../../libs/category/driver/magento/src/transformers/category-response-transform.service.ts","../../../libs/category/driver/magento/src/transformers/pure/add-metadata-types-to-aggregates.ts","../../../libs/category/driver/magento/src/category.service.ts","../../../libs/category/driver/magento/src/category-driver.module.ts","../../../libs/category/driver/magento/src/daffodil-category-driver-magento.ts"],"sourcesContent":["import { DocumentNode } from '@apollo/client/core';\n\nimport { createMultiInjectionToken } from '@daffodil/core';\n\n\nexport const {\n /**\n * A multi-provider injection token for providing category tree transform logic in the Magento driver.\n * It is run after the standard transforms and passed both the current transformed Daffodil category and the Magento category.\n */\n token: MAGENTO_CATEGORY_EXTRA_FRAGMENTS,\n /**\n * Provides category tree transforms for the Magento category driver.\n *\n * See {@link MAGENTO_CATEGORY_EXTRA_FRAGMENTS}.\n *\n * ```ts\n * providers: [\n * ...magentoProvideCategoryExtraFragments(\n * myCategoryExtraFragment\n * )\n * ]\n * ```\n */\n provider: magentoProvideCategoryExtraFragments,\n} = createMultiInjectionToken<DocumentNode>('MAGENTO_CATEGORY_EXTRA_FRAGMENTS');\n","import {\n daffUriTruncateQueryFragment,\n daffUriTruncateFileExtension,\n daffUriTruncateLeadingSlash,\n} from '@daffodil/core/routing';\n\n/**\n * Truncates leading slash, file extension, query params, and fragments.\n */\nexport const magentoCategoryTruncateUrl = (url: string): string =>\n daffUriTruncateLeadingSlash(daffUriTruncateFileExtension(daffUriTruncateQueryFragment(url)));\n","import { DaffCategoryMagentoDriverConfig } from '../interfaces/public_api';\nimport { magentoCategoryTruncateUrl } from '../transformers/truncate-url';\n\n/**\n * The default configuration for the {@link DaffCategoryMagentoDriverConfig}.\n */\nexport const MAGENTO_CATEGORY_CONFIG_DEFAULT: DaffCategoryMagentoDriverConfig = {\n truncateUrl: true,\n uriTruncationStrategy: magentoCategoryTruncateUrl,\n};\n","import { createConfigInjectionToken } from '@daffodil/core';\n\nimport { MAGENTO_CATEGORY_CONFIG_DEFAULT } from '../config/default';\n\nexport const {\n /**\n * The token used to provide @daffodil/category/driver/magento config data.\n * Mandatory for the Magento driver.\n */\n token: MAGENTO_CATEGORY_CONFIG_TOKEN,\n /**\n * Provider function for {@link MAGENTO_CATEGORY_CONFIG_TOKEN}.\n */\n provider: provideMagentoCategoryConfig,\n} = createConfigInjectionToken<DaffCategoryMagentoDriverConfig>(\n MAGENTO_CATEGORY_CONFIG_DEFAULT,\n 'MAGENTO_CATEGORY_CONFIG_TOKEN',\n);\n\n/**\n * An interface for providing @daffodil/category/driver/magento with necessary config values.\n */\nexport interface DaffCategoryMagentoDriverConfig {\n /**\n * Whether or not to attempt to truncate the category URL\n * during the {@link DaffMagentoCategoryService#getByUrl} call.\n * True by default.\n */\n truncateUrl?: boolean;\n /**\n * An optional custom function to truncate the URL.\n * Defaults to truncate leading slash, file extension, query params, and fragments.\n */\n uriTruncationStrategy?: (string) => string;\n}\n","import { gql } from 'apollo-angular';\n\nexport const DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME = 'MagentoResolveCategoryUrl';\n\n/**\n * This query retrieves a URL resolution from Magento and informs you about\n * what type of route the URL is.\n */\nexport const MagentoResolveCategoryUrl = gql`\n\tquery ${DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME}($url: String!) {\n\t\troute(url: $url) {\n __typename\n\t\t\t... on CategoryInterface {\n\t\t\t\tuid\n\t\t\t}\n\t\t}\n\t}\n`;\n","import { gql } from 'apollo-angular';\n\nexport const magentoCategoryTreeFragment = gql`\n fragment categoryTree on CategoryTree {\n uid\n url_path\n url_suffix\n canonical_url\n\t\tname\n\t\tlevel\n\t\tmeta_title\n\t\tmeta_description\n\t\tdescription\n\t\tbreadcrumbs {\n\t\t\tcategory_uid\n\t\t\tcategory_name\n\t\t\tcategory_level\n\t\t\tcategory_url_path\n\t\t}\n\t\tchildren_count\n }\n`;\n","import { gql } from 'apollo-angular';\nimport { DocumentNode } from 'graphql';\n\nimport {\n daffBuildFragmentDefinition,\n daffBuildFragmentNameSpread,\n} from '@daffodil/core/graphql';\nimport { magentoSearchResultPageInfoFragment } from '@daffodil/driver/magento';\nimport {\n magentoProductAggregationsFragment,\n magentoProductFragment,\n magentoProductSortFieldsFragment,\n} from '@daffodil/product/driver/magento';\n\nimport { magentoCategoryTreeFragment } from './fragments/public_api';\n\nexport const DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME = 'MagentoGetCategoryAndProducts';\n\nexport const MagentoGetCategoryAndProductsQuery = (extraCategoryFragments: DocumentNode[] = [], extraProductFragments: DocumentNode[] = []) => gql`\nquery ${DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME}($categoryFilters: CategoryFilterInput, $productFilter: ProductAttributeFilterInput!, $search: String, $pageSize: Int, $currentPage: Int, $sort: ProductAttributeSortInput)\n{\n categoryList(filters: $categoryFilters) {\n\t\t...categoryTree\n ${daffBuildFragmentNameSpread(...extraCategoryFragments)}\n\t}\n\tproducts(filter: $productFilter, search: $search, pageSize: $pageSize, currentPage: $currentPage, sort: $sort)\n\t{\n\t\ttotal_count\n\t\titems {\n\t\t\t...product\n ${daffBuildFragmentNameSpread(...extraProductFragments)}\n\t\t}\n\t\tpage_info {\n\t\t\t...magentoSearchResultPageInfo\n\t\t}\n\t\taggregations {\n\t\t\t...magentoProductAggregations\n\t\t}\n\t\tsort_fields {\n\t\t\t...magentoProductSortFields\n\t\t}\n\t}\n}\n${magentoCategoryTreeFragment}\n${magentoProductFragment}\n${magentoSearchResultPageInfoFragment}\n${magentoProductSortFieldsFragment}\n${magentoProductAggregationsFragment}\n${daffBuildFragmentDefinition(...extraCategoryFragments)}\n${daffBuildFragmentDefinition(...extraProductFragments)}\n`;\n","import { Injectable } from '@angular/core';\n\nimport { DaffCategory } from '@daffodil/category';\nimport { DaffFilterRequest } from '@daffodil/core';\nimport {\n MagentoProductFilterActionEnum,\n MagentoProductFilters,\n MagentoProductAppliedFiltersTransformService,\n} from '@daffodil/product/driver/magento';\n\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoAppliedFiltersTransformService {\n constructor(\n private productFilterRequestsTransformer: MagentoProductAppliedFiltersTransformService,\n ) {}\n\n transform(categoryId: DaffCategory['id'], daffFilters: DaffFilterRequest[]): MagentoProductFilters {\n const magentoFilters: MagentoProductFilters = {\n category_uid: {\n [MagentoProductFilterActionEnum.Equal]: categoryId,\n },\n };\n\n if(!daffFilters) {\n return magentoFilters;\n }\n\n return {\n ...magentoFilters,\n ...this.productFilterRequestsTransformer.transform(daffFilters),\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { DaffCategoryPageMetadata } from '@daffodil/category';\nimport { magentoProductCollectionMetadataTransform } from '@daffodil/product/driver/magento';\n\nimport { MagentoCompleteCategoryResponse } from '../models/public_api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryPageConfigTransformerService {\n\n transform(categoryResponse: MagentoCompleteCategoryResponse): DaffCategoryPageMetadata {\n const aggregatesWithoutCategories = categoryResponse.aggregates.filter(aggregate => aggregate.attribute_code !== 'category_id');\n\n return {\n ...magentoProductCollectionMetadataTransform(\n aggregatesWithoutCategories,\n categoryResponse.page_info,\n categoryResponse.sort_fields,\n categoryResponse.products,\n categoryResponse.total_count,\n categoryResponse.appliedSortOption,\n categoryResponse.appliedSortDirection,\n ),\n id: categoryResponse.category.uid,\n };\n }\n}\n","// workaround https://github.com/graycoreio/daffodil/issues/1667\nimport { DaffCategory } from '@daffodil/category';\nimport { createMultiInjectionToken } from '@daffodil/core';\n\nimport { MagentoCategoryTreeTransform } from './type';\n\nexport const {\n /**\n * A multi-provider injection token for providing category transform logic in the Magento driver.\n * It is run after the standard transforms and passed both the current transformed Daffodil category and the Magento category.\n */\n token: MAGENTO_CATEGORY_EXTRA_TRANSFORMS,\n /**\n * Provides category transforms for the Magento category driver.\n *\n * See {@link MAGENTO_CATEGORY_EXTRA_TRANSFORMS}.\n *\n * ```ts\n * providers: [\n * ...magentoProvideCategoryExtraTransforms(\n * myCategoryExtraTransform\n * )\n * ]\n * ```\n */\n provider: magentoProvideCategoryExtraTransforms,\n} = createMultiInjectionToken<MagentoCategoryTreeTransform>('MAGENTO_CATEGORY_EXTRA_TRANSFORMS');\n","import {\n Inject,\n Injectable,\n} from '@angular/core';\n\nimport {\n DaffCategory,\n DaffCategoryBreadcrumb,\n} from '@daffodil/category';\nimport { MagentoProduct } from '@daffodil/product/driver/magento';\n\nimport {\n MagentoBreadcrumb,\n MagentoCategory,\n} from '../models/public_api';\nimport {\n MAGENTO_CATEGORY_EXTRA_TRANSFORMS,\n MagentoCategoryTreeTransform,\n} from '../transforms/public_api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryTransformerService {\n constructor(\n @Inject(MAGENTO_CATEGORY_EXTRA_TRANSFORMS) private extraTransforms: Array<MagentoCategoryTreeTransform>,\n ) {}\n\n transform(category: MagentoCategory, products: MagentoProduct[]): DaffCategory {\n return this.extraTransforms.reduce<DaffCategory>((acc, transform) => transform(acc, category, products), {\n id: category.uid,\n url: `/${category.url_path}${category.url_suffix}`,\n canonicalUrl: category.canonical_url,\n name: category.name,\n description: category.description,\n meta_title: category.meta_title,\n meta_description: category.meta_description,\n children_count: category.children_count,\n breadcrumbs: category.breadcrumbs\n ?.map(breadcrumb => this.transformBreadcrumb(breadcrumb, category))\n .sort((a, b) => a.level - b.level) || null,\n product_ids: products.map(product => product.sku),\n total_products: products.length,\n });\n }\n\n private transformBreadcrumb(breadcrumb: MagentoBreadcrumb, category: MagentoCategory): DaffCategoryBreadcrumb {\n return {\n id: breadcrumb.category_uid,\n name: breadcrumb.category_name,\n level: breadcrumb.category_level,\n url: `/${breadcrumb.category_url_path}${category.url_suffix}`,\n };\n }\n}\n","import {\n Inject,\n Injectable,\n} from '@angular/core';\n\nimport { DaffGetCategoryResponse } from '@daffodil/category';\nimport {\n DAFF_PRODUCT_MAGENTO_PRODUCT_TRANSFORM,\n DaffMagentoProductTransform,\n} from '@daffodil/product/driver/magento';\n\nimport { DaffMagentoCategoryPageConfigTransformerService } from './category-page-config-transformer.service';\nimport { DaffMagentoCategoryTransformerService } from './category-transformer.service';\nimport { MagentoCompleteCategoryResponse } from '../models/public_api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryResponseTransformService {\n\n constructor(\n private magentoCategoryTransformerService: DaffMagentoCategoryTransformerService,\n private magentoCategoryPageConfigurationTransformerService: DaffMagentoCategoryPageConfigTransformerService,\n @Inject(DAFF_PRODUCT_MAGENTO_PRODUCT_TRANSFORM) private magentoProductsTransform: DaffMagentoProductTransform,\n ) {}\n\n transform(completeCategory: MagentoCompleteCategoryResponse, mediaUrl: string): DaffGetCategoryResponse {\n return {\n ...{ magentoCompleteCategoryResponse: completeCategory },\n category: this.magentoCategoryTransformerService.transform(completeCategory.category, completeCategory.products),\n categoryPageMetadata: this.magentoCategoryPageConfigurationTransformerService.transform(completeCategory),\n products: completeCategory.products.map(product => this.magentoProductsTransform(product, mediaUrl)),\n };\n }\n}\n","import {\n MagentoProductGetFilterTypesResponse,\n magentoProductGetMatchedAttributeType,\n} from '@daffodil/product/driver/magento';\n\nimport { MagentoGetCategoryAndProductsResponse } from '../../models/public_api';\n\nexport function addMetadataTypesToProductsResponse(\n attributeResponse: MagentoProductGetFilterTypesResponse,\n aggregationResponse: MagentoGetCategoryAndProductsResponse,\n): MagentoGetCategoryAndProductsResponse {\n return {\n ...aggregationResponse,\n products: {\n ...aggregationResponse.products,\n aggregations: [\n ...aggregationResponse.products.aggregations.map((aggregate) => ({\n ...aggregate,\n type: magentoProductGetMatchedAttributeType(aggregate, attributeResponse.__type.inputFields),\n })),\n ],\n },\n };\n}\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport { Apollo } from 'apollo-angular';\nimport { DocumentNode } from 'graphql';\nimport {\n Observable,\n combineLatest,\n} from 'rxjs';\nimport {\n map,\n switchMap,\n} from 'rxjs/operators';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryUrlRequest,\n DaffCategoryRequestKind,\n DaffCategoryIdRequest,\n DaffCategoryRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n daffApplyRequestsToFilters,\n DaffFilterRequest,\n} from '@daffodil/core';\nimport {\n DaffProductMagentoDriverConfig,\n DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_FRAGMENTS,\n MagentoProductGetFilterTypes,\n MagentoProductGetFilterTypesResponse,\n MAGENTO_PRODUCT_CONFIG_TOKEN,\n magentoAppliedSortOptionTransform,\n DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS,\n} from '@daffodil/product/driver/magento';\n\nimport { MAGENTO_CATEGORY_EXTRA_FRAGMENTS } from './fragments/public_api';\nimport {\n MAGENTO_CATEGORY_CONFIG_TOKEN,\n DaffCategoryMagentoDriverConfig,\n} from './interfaces/public_api';\nimport {\n MagentoGetCategoryAndProductsRequest,\n MagentoGetCategoryAndProductsResponse,\n MagentoCategoryUrlResolverResponse,\n MagentoCompleteCategoryResponse,\n} from './models/public_api';\nimport {\n MagentoGetCategoryAndProductsQuery,\n MagentoResolveCategoryUrl,\n} from './queries/public_api';\nimport {\n DaffMagentoCategoryResponseTransformService,\n DaffMagentoAppliedFiltersTransformService,\n} from './transformers/public_api';\nimport { addMetadataTypesToProductsResponse } from './transformers/pure/add-metadata-types-to-aggregates';\n\nconst applyFiltersOnResponse = (requests: DaffFilterRequest[], response: DaffGetCategoryResponse): DaffGetCategoryResponse => ({\n ...response,\n categoryPageMetadata: {\n ...response.categoryPageMetadata,\n filters: daffApplyRequestsToFilters(requests, response.categoryPageMetadata.filters),\n },\n});\n\n/**\n * A service for making magento apollo queries for categories. Should be provided via the {@link DaffCategoryDriver} token.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private apollo: Apollo,\n private magentoCategoryResponseTransformer: DaffMagentoCategoryResponseTransformService,\n private magentoAppliedFiltersTransformer: DaffMagentoAppliedFiltersTransformService,\n @Inject(MAGENTO_CATEGORY_CONFIG_TOKEN) private config: DaffCategoryMagentoDriverConfig,\n @Inject(MAGENTO_PRODUCT_CONFIG_TOKEN) private productConfig: DaffProductMagentoDriverConfig,\n @Inject(DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_FRAGMENTS) private extraProductFragments: DocumentNode[],\n @Inject(DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS) private extraProductPreviewFragments: DocumentNode[],\n @Inject(MAGENTO_CATEGORY_EXTRA_FRAGMENTS) private extraCategoryFragments: DocumentNode[],\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return combineLatest([\n this.apollo.query<MagentoProductGetFilterTypesResponse>({\n query: MagentoProductGetFilterTypes,\n }),\n this.apollo.query<MagentoGetCategoryAndProductsResponse>({\n query: MagentoGetCategoryAndProductsQuery(this.extraCategoryFragments, [\n ...this.extraProductFragments,\n ...this.extraProductPreviewFragments,\n ]),\n variables: this.getCategoryAndProductsQueryVariables(categoryRequest),\n }),\n ]).pipe(\n map(([\n filterTypes,\n categoryAndProducts,\n ]) => this.transformCategory(categoryAndProducts.data, filterTypes.data, categoryRequest,this.productConfig.baseMediaUrl)),\n map(result => categoryRequest.filterRequests\n ? applyFiltersOnResponse(categoryRequest.filterRequests, result)\n : result,\n ),\n );\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return combineLatest([\n this.apollo.query<MagentoCategoryUrlResolverResponse>({\n query: MagentoResolveCategoryUrl,\n variables: {\n url: categoryRequest.url,\n },\n }),\n this.apollo.query<MagentoProductGetFilterTypesResponse>({\n query: MagentoProductGetFilterTypes,\n }),\n ]).pipe(\n switchMap(([\n category,\n filterTypes,\n ]) => this.apollo.query<MagentoGetCategoryAndProductsResponse>({\n query: MagentoGetCategoryAndProductsQuery(this.extraCategoryFragments, [\n ...this.extraProductFragments,\n ...this.extraProductPreviewFragments,\n ]),\n variables: this.getCategoryAndProductsQueryVariables({\n ...categoryRequest,\n id: category.data.route?.uid,\n kind: DaffCategoryRequestKind.ID,\n }),\n }).pipe(\n map(categoryAndProducts => this.transformCategory(categoryAndProducts.data, filterTypes.data, categoryRequest, this.productConfig.baseMediaUrl)),\n map(result => categoryRequest.filterRequests\n ? applyFiltersOnResponse(categoryRequest.filterRequests, result)\n : result,\n ),\n )),\n );\n }\n\n private getCategoryAndProductsQueryVariables(request: DaffCategoryIdRequest): MagentoGetCategoryAndProductsRequest {\n const queryVariables = {\n productFilter: this.magentoAppliedFiltersTransformer.transform(request.id, request.filterRequests),\n categoryFilters: {\n category_uid: {\n eq: request.id,\n },\n },\n };\n if(request.pageSize) {\n queryVariables['pageSize'] = request.pageSize;\n }\n if(request.currentPage) {\n queryVariables['currentPage'] = request.currentPage;\n }\n if(request.appliedSortOption && request.appliedSortDirection) {\n queryVariables['sort'] = magentoAppliedSortOptionTransform(request.appliedSortOption, request.appliedSortDirection);\n }\n\n return queryVariables;\n }\n\n private transformCategory(\n categoryResponse: MagentoGetCategoryAndProductsResponse,\n filterTypesResponse: MagentoProductGetFilterTypesResponse,\n request: DaffCategoryRequest,\n mediaUrl: string,\n ): DaffGetCategoryResponse {\n const aggregations = addMetadataTypesToProductsResponse(filterTypesResponse, categoryResponse);\n const completeCategory: MagentoCompleteCategoryResponse = {\n category: categoryResponse.categoryList[0],\n products: categoryResponse.products.items,\n aggregates: aggregations.products.aggregations,\n sort_fields: aggregations.products.sort_fields,\n total_count: categoryResponse.products.total_count,\n page_info: categoryResponse.products.page_info,\n appliedSortOption: request.appliedSortOption,\n appliedSortDirection: request.appliedSortDirection,\n };\n\n return this.magentoCategoryResponseTransformer.transform(completeCategory, mediaUrl);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n ModuleWithProviders,\n NgModule,\n} from '@angular/core';\n\nimport { provideDaffCategoryDriver } from '@daffodil/category/driver';\nimport { provideManyDaffMagentoCacheableOperations } from '@daffodil/driver/magento';\nimport { DAFF_MAGENTO_GET_FILTER_TYPES_QUERY_NAME } from '@daffodil/product/driver/magento';\n\nimport { DaffMagentoCategoryService } from './category.service';\nimport { MAGENTO_CATEGORY_CONFIG_DEFAULT } from './config/default';\nimport {\n DaffCategoryMagentoDriverConfig,\n provideMagentoCategoryConfig,\n} from './interfaces/public_api';\nimport {\n DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME,\n DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME,\n} from './queries/public_api';\nimport { DaffMagentoAppliedFiltersTransformService } from './transformers/applied-filter-transformer.service';\nimport { DaffMagentoCategoryPageConfigTransformerService } from './transformers/category-page-config-transformer.service';\nimport { DaffMagentoCategoryResponseTransformService } from './transformers/category-response-transform.service';\nimport { DaffMagentoCategoryTransformerService } from './transformers/category-transformer.service';\n\n/**\n * A module that provides the {@link DaffCategoryDriver} and {@link MAGENTO_CATEGORY_CONFIG_TOKEN} as the {@link DaffMagentoCategoryService} and\n * {@link MAGENTO_CATEGORY_CONFIG_DEFAULT} respectively\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryMagentoDriverModule {\n static forRoot(config: DaffCategoryMagentoDriverConfig = MAGENTO_CATEGORY_CONFIG_DEFAULT): ModuleWithProviders<DaffCategoryMagentoDriverModule> {\n return {\n ngModule: DaffCategoryMagentoDriverModule,\n providers: [\n provideDaffCategoryDriver(DaffMagentoCategoryService),\n DaffMagentoCategoryPageConfigTransformerService,\n DaffMagentoCategoryResponseTransformService,\n DaffMagentoCategoryTransformerService,\n DaffMagentoAppliedFiltersTransformService,\n provideManyDaffMagentoCacheableOperations(\n DAFF_MAGENTO_GET_FILTER_TYPES_QUERY_NAME,\n DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME,\n DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME,\n ),\n provideMagentoCategoryConfig(config),\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.DaffMagentoCategoryResponseTransformService","i2.DaffMagentoAppliedFiltersTransformService"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"daffodil-category-driver-magento.mjs","sources":["../../../libs/category/driver/magento/src/fragments/token.ts","../../../libs/category/driver/magento/src/transformers/truncate-url.ts","../../../libs/category/driver/magento/src/config/default.ts","../../../libs/category/driver/magento/src/interfaces/config.interface.ts","../../../libs/category/driver/magento/src/queries/resolve-url.ts","../../../libs/category/driver/magento/src/queries/fragments/category-tree.ts","../../../libs/category/driver/magento/src/queries/get-category-and-products.ts","../../../libs/category/driver/magento/src/transformers/applied-filter-transformer.service.ts","../../../libs/category/driver/magento/src/transformers/category-page-config-transformer.service.ts","../../../libs/category/driver/magento/src/transforms/token.ts","../../../libs/category/driver/magento/src/transformers/category-transformer.service.ts","../../../libs/category/driver/magento/src/transformers/category-response-transform.service.ts","../../../libs/category/driver/magento/src/transformers/pure/add-metadata-types-to-aggregates.ts","../../../libs/category/driver/magento/src/category.service.ts","../../../libs/category/driver/magento/src/category-driver.module.ts","../../../libs/category/driver/magento/src/daffodil-category-driver-magento.ts"],"sourcesContent":["import { DocumentNode } from '@apollo/client/core';\n\nimport { createMultiInjectionToken } from '@daffodil/core';\n\n\nexport const {\n /**\n * A multi-provider injection token for providing category tree transform logic in the Magento driver.\n * It is run after the standard transforms and passed both the current transformed Daffodil category and the Magento category.\n */\n token: MAGENTO_CATEGORY_EXTRA_FRAGMENTS,\n /**\n * Provides category tree transforms for the Magento category driver.\n *\n * See {@link MAGENTO_CATEGORY_EXTRA_FRAGMENTS}.\n *\n * @example\n * ```ts\n * providers: [\n * ...magentoProvideCategoryExtraFragments(\n * myCategoryExtraFragment\n * )\n * ]\n * ```\n */\n provider: magentoProvideCategoryExtraFragments,\n} = createMultiInjectionToken<DocumentNode>('MAGENTO_CATEGORY_EXTRA_FRAGMENTS');\n","import {\n daffUriTruncateQueryFragment,\n daffUriTruncateFileExtension,\n daffUriTruncateLeadingSlash,\n} from '@daffodil/core/routing';\n\n/**\n * Truncates leading slash, file extension, query params, and fragments.\n */\nexport const magentoCategoryTruncateUrl = (url: string): string =>\n daffUriTruncateLeadingSlash(daffUriTruncateFileExtension(daffUriTruncateQueryFragment(url)));\n","import { DaffCategoryMagentoDriverConfig } from '../interfaces/public_api';\nimport { magentoCategoryTruncateUrl } from '../transformers/truncate-url';\n\n/**\n * The default configuration for the {@link DaffCategoryMagentoDriverConfig}.\n */\nexport const MAGENTO_CATEGORY_CONFIG_DEFAULT: DaffCategoryMagentoDriverConfig = {\n truncateUrl: true,\n uriTruncationStrategy: magentoCategoryTruncateUrl,\n};\n","import { createConfigInjectionToken } from '@daffodil/core';\n\nimport { MAGENTO_CATEGORY_CONFIG_DEFAULT } from '../config/default';\n\nexport const {\n /**\n * The token used to provide @daffodil/category/driver/magento config data.\n * Mandatory for the Magento driver.\n */\n token: MAGENTO_CATEGORY_CONFIG_TOKEN,\n /**\n * Provider function for {@link MAGENTO_CATEGORY_CONFIG_TOKEN}.\n */\n provider: provideMagentoCategoryConfig,\n} = createConfigInjectionToken<DaffCategoryMagentoDriverConfig>(\n MAGENTO_CATEGORY_CONFIG_DEFAULT,\n 'MAGENTO_CATEGORY_CONFIG_TOKEN',\n);\n\n/**\n * An interface for providing @daffodil/category/driver/magento with necessary config values.\n */\nexport interface DaffCategoryMagentoDriverConfig {\n /**\n * Whether or not to attempt to truncate the category URL\n * during the {@link DaffMagentoCategoryService#getByUrl} call.\n * True by default.\n */\n truncateUrl?: boolean;\n /**\n * An optional custom function to truncate the URL.\n * Defaults to truncate leading slash, file extension, query params, and fragments.\n */\n uriTruncationStrategy?: (string) => string;\n}\n","import { gql } from 'apollo-angular';\n\nexport const DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME = 'MagentoResolveCategoryUrl';\n\n/**\n * This query retrieves a URL resolution from Magento and informs you about\n * what type of route the URL is.\n */\nexport const MagentoResolveCategoryUrl = gql`\n\tquery ${DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME}($url: String!) {\n\t\troute(url: $url) {\n __typename\n\t\t\t... on CategoryInterface {\n\t\t\t\tuid\n\t\t\t}\n\t\t}\n\t}\n`;\n","import { gql } from 'apollo-angular';\n\nexport const magentoCategoryTreeFragment = gql`\n fragment categoryTree on CategoryTree {\n uid\n url_path\n url_suffix\n canonical_url\n\t\tname\n\t\tlevel\n\t\tmeta_title\n\t\tmeta_description\n\t\tdescription\n\t\tbreadcrumbs {\n\t\t\tcategory_uid\n\t\t\tcategory_name\n\t\t\tcategory_level\n\t\t\tcategory_url_path\n\t\t}\n\t\tchildren_count\n }\n`;\n","import { gql } from 'apollo-angular';\nimport { DocumentNode } from 'graphql';\n\nimport {\n daffBuildFragmentDefinition,\n daffBuildFragmentNameSpread,\n} from '@daffodil/core/graphql';\nimport { magentoSearchResultPageInfoFragment } from '@daffodil/driver/magento';\nimport {\n magentoProductAggregationsFragment,\n magentoProductFragment,\n magentoProductSortFieldsFragment,\n} from '@daffodil/product/driver/magento';\n\nimport { magentoCategoryTreeFragment } from './fragments/public_api';\n\nexport const DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME = 'MagentoGetCategoryAndProducts';\n\nexport const MagentoGetCategoryAndProductsQuery = (extraCategoryFragments: DocumentNode[] = [], extraProductFragments: DocumentNode[] = []) => gql`\nquery ${DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME}($categoryFilters: CategoryFilterInput, $productFilter: ProductAttributeFilterInput!, $search: String, $pageSize: Int, $currentPage: Int, $sort: ProductAttributeSortInput)\n{\n categoryList(filters: $categoryFilters) {\n\t\t...categoryTree\n ${daffBuildFragmentNameSpread(...extraCategoryFragments)}\n\t}\n\tproducts(filter: $productFilter, search: $search, pageSize: $pageSize, currentPage: $currentPage, sort: $sort)\n\t{\n\t\ttotal_count\n\t\titems {\n\t\t\t...product\n ${daffBuildFragmentNameSpread(...extraProductFragments)}\n\t\t}\n\t\tpage_info {\n\t\t\t...magentoSearchResultPageInfo\n\t\t}\n\t\taggregations {\n\t\t\t...magentoProductAggregations\n\t\t}\n\t\tsort_fields {\n\t\t\t...magentoProductSortFields\n\t\t}\n\t}\n}\n${magentoCategoryTreeFragment}\n${magentoProductFragment}\n${magentoSearchResultPageInfoFragment}\n${magentoProductSortFieldsFragment}\n${magentoProductAggregationsFragment}\n${daffBuildFragmentDefinition(...extraCategoryFragments)}\n${daffBuildFragmentDefinition(...extraProductFragments)}\n`;\n","import { Injectable } from '@angular/core';\n\nimport { DaffCategory } from '@daffodil/category';\nimport { DaffFilterRequest } from '@daffodil/core';\nimport {\n MagentoProductFilterActionEnum,\n MagentoProductFilters,\n MagentoProductAppliedFiltersTransformService,\n} from '@daffodil/product/driver/magento';\n\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoAppliedFiltersTransformService {\n constructor(\n private productFilterRequestsTransformer: MagentoProductAppliedFiltersTransformService,\n ) {}\n\n transform(categoryId: DaffCategory['id'], daffFilters: DaffFilterRequest[]): MagentoProductFilters {\n const magentoFilters: MagentoProductFilters = {\n category_uid: {\n [MagentoProductFilterActionEnum.Equal]: categoryId,\n },\n };\n\n if(!daffFilters) {\n return magentoFilters;\n }\n\n return {\n ...magentoFilters,\n ...this.productFilterRequestsTransformer.transform(daffFilters),\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { DaffCategoryPageMetadata } from '@daffodil/category';\nimport { magentoProductCollectionMetadataTransform } from '@daffodil/product/driver/magento';\n\nimport { MagentoCompleteCategoryResponse } from '../models/public_api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryPageConfigTransformerService {\n\n transform(categoryResponse: MagentoCompleteCategoryResponse): DaffCategoryPageMetadata {\n const aggregatesWithoutCategories = categoryResponse.aggregates.filter(aggregate => aggregate.attribute_code !== 'category_id');\n\n return {\n ...magentoProductCollectionMetadataTransform(\n aggregatesWithoutCategories,\n categoryResponse.page_info,\n categoryResponse.sort_fields,\n categoryResponse.products,\n categoryResponse.total_count,\n categoryResponse.appliedSortOption,\n categoryResponse.appliedSortDirection,\n ),\n id: categoryResponse.category.uid,\n };\n }\n}\n","// workaround https://github.com/graycoreio/daffodil/issues/1667\nimport { DaffCategory } from '@daffodil/category';\nimport { createMultiInjectionToken } from '@daffodil/core';\n\nimport { MagentoCategoryTreeTransform } from './type';\n\nexport const {\n /**\n * A multi-provider injection token for providing category transform logic in the Magento driver.\n * It is run after the standard transforms and passed both the current transformed Daffodil category and the Magento category.\n */\n token: MAGENTO_CATEGORY_EXTRA_TRANSFORMS,\n /**\n * Provides category transforms for the Magento category driver.\n *\n * See {@link MAGENTO_CATEGORY_EXTRA_TRANSFORMS}.\n *\n * @example\n * ```ts\n * providers: [\n * ...magentoProvideCategoryExtraTransforms(\n * myCategoryExtraTransform\n * )\n * ]\n * ```\n */\n provider: magentoProvideCategoryExtraTransforms,\n} = createMultiInjectionToken<MagentoCategoryTreeTransform>('MAGENTO_CATEGORY_EXTRA_TRANSFORMS');\n","import {\n Inject,\n Injectable,\n} from '@angular/core';\n\nimport {\n DaffCategory,\n DaffCategoryBreadcrumb,\n} from '@daffodil/category';\nimport { MagentoProduct } from '@daffodil/product/driver/magento';\n\nimport {\n MagentoBreadcrumb,\n MagentoCategory,\n} from '../models/public_api';\nimport {\n MAGENTO_CATEGORY_EXTRA_TRANSFORMS,\n MagentoCategoryTreeTransform,\n} from '../transforms/public_api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryTransformerService {\n constructor(\n @Inject(MAGENTO_CATEGORY_EXTRA_TRANSFORMS) private extraTransforms: Array<MagentoCategoryTreeTransform>,\n ) {}\n\n transform(category: MagentoCategory, products: MagentoProduct[]): DaffCategory {\n return this.extraTransforms.reduce<DaffCategory>((acc, transform) => transform(acc, category, products), {\n id: category.uid,\n url: `/${category.url_path}${category.url_suffix}`,\n canonicalUrl: category.canonical_url,\n name: category.name,\n description: category.description,\n meta_title: category.meta_title,\n meta_description: category.meta_description,\n children_count: category.children_count,\n breadcrumbs: category.breadcrumbs\n ?.map(breadcrumb => this.transformBreadcrumb(breadcrumb, category))\n .sort((a, b) => a.level - b.level) || null,\n product_ids: products.map(product => product.sku),\n total_products: products.length,\n });\n }\n\n private transformBreadcrumb(breadcrumb: MagentoBreadcrumb, category: MagentoCategory): DaffCategoryBreadcrumb {\n return {\n id: breadcrumb.category_uid,\n name: breadcrumb.category_name,\n level: breadcrumb.category_level,\n url: `/${breadcrumb.category_url_path}${category.url_suffix}`,\n };\n }\n}\n","import {\n Inject,\n Injectable,\n} from '@angular/core';\n\nimport { DaffGetCategoryResponse } from '@daffodil/category';\nimport {\n DAFF_PRODUCT_MAGENTO_PRODUCT_TRANSFORM,\n DaffMagentoProductTransform,\n} from '@daffodil/product/driver/magento';\n\nimport { DaffMagentoCategoryPageConfigTransformerService } from './category-page-config-transformer.service';\nimport { DaffMagentoCategoryTransformerService } from './category-transformer.service';\nimport { MagentoCompleteCategoryResponse } from '../models/public_api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryResponseTransformService {\n\n constructor(\n private magentoCategoryTransformerService: DaffMagentoCategoryTransformerService,\n private magentoCategoryPageConfigurationTransformerService: DaffMagentoCategoryPageConfigTransformerService,\n @Inject(DAFF_PRODUCT_MAGENTO_PRODUCT_TRANSFORM) private magentoProductsTransform: DaffMagentoProductTransform,\n ) {}\n\n transform(completeCategory: MagentoCompleteCategoryResponse, mediaUrl: string): DaffGetCategoryResponse {\n return {\n ...{ magentoCompleteCategoryResponse: completeCategory },\n category: this.magentoCategoryTransformerService.transform(completeCategory.category, completeCategory.products),\n categoryPageMetadata: this.magentoCategoryPageConfigurationTransformerService.transform(completeCategory),\n products: completeCategory.products.map(product => this.magentoProductsTransform(product, mediaUrl)),\n };\n }\n}\n","import {\n MagentoProductGetFilterTypesResponse,\n magentoProductGetMatchedAttributeType,\n} from '@daffodil/product/driver/magento';\n\nimport { MagentoGetCategoryAndProductsResponse } from '../../models/public_api';\n\nexport function addMetadataTypesToProductsResponse(\n attributeResponse: MagentoProductGetFilterTypesResponse,\n aggregationResponse: MagentoGetCategoryAndProductsResponse,\n): MagentoGetCategoryAndProductsResponse {\n return {\n ...aggregationResponse,\n products: {\n ...aggregationResponse.products,\n aggregations: [\n ...aggregationResponse.products.aggregations.map((aggregate) => ({\n ...aggregate,\n type: magentoProductGetMatchedAttributeType(aggregate, attributeResponse.__type.inputFields),\n })),\n ],\n },\n };\n}\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport { Apollo } from 'apollo-angular';\nimport { DocumentNode } from 'graphql';\nimport {\n Observable,\n combineLatest,\n} from 'rxjs';\nimport {\n map,\n switchMap,\n} from 'rxjs/operators';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryUrlRequest,\n DaffCategoryRequestKind,\n DaffCategoryIdRequest,\n DaffCategoryRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n daffApplyRequestsToFilters,\n DaffFilterRequest,\n} from '@daffodil/core';\nimport {\n DaffProductMagentoDriverConfig,\n DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_FRAGMENTS,\n MagentoProductGetFilterTypes,\n MagentoProductGetFilterTypesResponse,\n MAGENTO_PRODUCT_CONFIG_TOKEN,\n magentoAppliedSortOptionTransform,\n DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS,\n} from '@daffodil/product/driver/magento';\n\nimport { MAGENTO_CATEGORY_EXTRA_FRAGMENTS } from './fragments/public_api';\nimport {\n MAGENTO_CATEGORY_CONFIG_TOKEN,\n DaffCategoryMagentoDriverConfig,\n} from './interfaces/public_api';\nimport {\n MagentoGetCategoryAndProductsRequest,\n MagentoGetCategoryAndProductsResponse,\n MagentoCategoryUrlResolverResponse,\n MagentoCompleteCategoryResponse,\n} from './models/public_api';\nimport {\n MagentoGetCategoryAndProductsQuery,\n MagentoResolveCategoryUrl,\n} from './queries/public_api';\nimport {\n DaffMagentoCategoryResponseTransformService,\n DaffMagentoAppliedFiltersTransformService,\n} from './transformers/public_api';\nimport { addMetadataTypesToProductsResponse } from './transformers/pure/add-metadata-types-to-aggregates';\n\nconst applyFiltersOnResponse = (requests: DaffFilterRequest[], response: DaffGetCategoryResponse): DaffGetCategoryResponse => ({\n ...response,\n categoryPageMetadata: {\n ...response.categoryPageMetadata,\n filters: daffApplyRequestsToFilters(requests, response.categoryPageMetadata.filters),\n },\n});\n\n/**\n * A service for making magento apollo queries for categories. Should be provided via the {@link DaffCategoryDriver} token.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private apollo: Apollo,\n private magentoCategoryResponseTransformer: DaffMagentoCategoryResponseTransformService,\n private magentoAppliedFiltersTransformer: DaffMagentoAppliedFiltersTransformService,\n @Inject(MAGENTO_CATEGORY_CONFIG_TOKEN) private config: DaffCategoryMagentoDriverConfig,\n @Inject(MAGENTO_PRODUCT_CONFIG_TOKEN) private productConfig: DaffProductMagentoDriverConfig,\n @Inject(DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_FRAGMENTS) private extraProductFragments: DocumentNode[],\n @Inject(DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS) private extraProductPreviewFragments: DocumentNode[],\n @Inject(MAGENTO_CATEGORY_EXTRA_FRAGMENTS) private extraCategoryFragments: DocumentNode[],\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return combineLatest([\n this.apollo.query<MagentoProductGetFilterTypesResponse>({\n query: MagentoProductGetFilterTypes,\n }),\n this.apollo.query<MagentoGetCategoryAndProductsResponse>({\n query: MagentoGetCategoryAndProductsQuery(this.extraCategoryFragments, [\n ...this.extraProductFragments,\n ...this.extraProductPreviewFragments,\n ]),\n variables: this.getCategoryAndProductsQueryVariables(categoryRequest),\n }),\n ]).pipe(\n map(([\n filterTypes,\n categoryAndProducts,\n ]) => this.transformCategory(categoryAndProducts.data, filterTypes.data, categoryRequest,this.productConfig.baseMediaUrl)),\n map(result => categoryRequest.filterRequests\n ? applyFiltersOnResponse(categoryRequest.filterRequests, result)\n : result,\n ),\n );\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return combineLatest([\n this.apollo.query<MagentoCategoryUrlResolverResponse>({\n query: MagentoResolveCategoryUrl,\n variables: {\n url: categoryRequest.url,\n },\n }),\n this.apollo.query<MagentoProductGetFilterTypesResponse>({\n query: MagentoProductGetFilterTypes,\n }),\n ]).pipe(\n switchMap(([\n category,\n filterTypes,\n ]) => this.apollo.query<MagentoGetCategoryAndProductsResponse>({\n query: MagentoGetCategoryAndProductsQuery(this.extraCategoryFragments, [\n ...this.extraProductFragments,\n ...this.extraProductPreviewFragments,\n ]),\n variables: this.getCategoryAndProductsQueryVariables({\n ...categoryRequest,\n id: category.data.route?.uid,\n kind: DaffCategoryRequestKind.ID,\n }),\n }).pipe(\n map(categoryAndProducts => this.transformCategory(categoryAndProducts.data, filterTypes.data, categoryRequest, this.productConfig.baseMediaUrl)),\n map(result => categoryRequest.filterRequests\n ? applyFiltersOnResponse(categoryRequest.filterRequests, result)\n : result,\n ),\n )),\n );\n }\n\n private getCategoryAndProductsQueryVariables(request: DaffCategoryIdRequest): MagentoGetCategoryAndProductsRequest {\n const queryVariables = {\n productFilter: this.magentoAppliedFiltersTransformer.transform(request.id, request.filterRequests),\n categoryFilters: {\n category_uid: {\n eq: request.id,\n },\n },\n };\n if(request.pageSize) {\n queryVariables['pageSize'] = request.pageSize;\n }\n if(request.currentPage) {\n queryVariables['currentPage'] = request.currentPage;\n }\n if(request.appliedSortOption && request.appliedSortDirection) {\n queryVariables['sort'] = magentoAppliedSortOptionTransform(request.appliedSortOption, request.appliedSortDirection);\n }\n\n return queryVariables;\n }\n\n private transformCategory(\n categoryResponse: MagentoGetCategoryAndProductsResponse,\n filterTypesResponse: MagentoProductGetFilterTypesResponse,\n request: DaffCategoryRequest,\n mediaUrl: string,\n ): DaffGetCategoryResponse {\n const aggregations = addMetadataTypesToProductsResponse(filterTypesResponse, categoryResponse);\n const completeCategory: MagentoCompleteCategoryResponse = {\n category: categoryResponse.categoryList[0],\n products: categoryResponse.products.items,\n aggregates: aggregations.products.aggregations,\n sort_fields: aggregations.products.sort_fields,\n total_count: categoryResponse.products.total_count,\n page_info: categoryResponse.products.page_info,\n appliedSortOption: request.appliedSortOption,\n appliedSortDirection: request.appliedSortDirection,\n };\n\n return this.magentoCategoryResponseTransformer.transform(completeCategory, mediaUrl);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n ModuleWithProviders,\n NgModule,\n} from '@angular/core';\n\nimport { provideDaffCategoryDriver } from '@daffodil/category/driver';\nimport { provideManyDaffMagentoCacheableOperations } from '@daffodil/driver/magento';\nimport { DAFF_MAGENTO_GET_FILTER_TYPES_QUERY_NAME } from '@daffodil/product/driver/magento';\n\nimport { DaffMagentoCategoryService } from './category.service';\nimport { MAGENTO_CATEGORY_CONFIG_DEFAULT } from './config/default';\nimport {\n DaffCategoryMagentoDriverConfig,\n provideMagentoCategoryConfig,\n} from './interfaces/public_api';\nimport {\n DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME,\n DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME,\n} from './queries/public_api';\nimport { DaffMagentoAppliedFiltersTransformService } from './transformers/applied-filter-transformer.service';\nimport { DaffMagentoCategoryPageConfigTransformerService } from './transformers/category-page-config-transformer.service';\nimport { DaffMagentoCategoryResponseTransformService } from './transformers/category-response-transform.service';\nimport { DaffMagentoCategoryTransformerService } from './transformers/category-transformer.service';\n\n/**\n * A module that provides the {@link DaffCategoryDriver} and {@link MAGENTO_CATEGORY_CONFIG_TOKEN} as the {@link DaffMagentoCategoryService} and\n * {@link MAGENTO_CATEGORY_CONFIG_DEFAULT} respectively\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryMagentoDriverModule {\n static forRoot(config: DaffCategoryMagentoDriverConfig = MAGENTO_CATEGORY_CONFIG_DEFAULT): ModuleWithProviders<DaffCategoryMagentoDriverModule> {\n return {\n ngModule: DaffCategoryMagentoDriverModule,\n providers: [\n provideDaffCategoryDriver(DaffMagentoCategoryService),\n DaffMagentoCategoryPageConfigTransformerService,\n DaffMagentoCategoryResponseTransformService,\n DaffMagentoCategoryTransformerService,\n DaffMagentoAppliedFiltersTransformService,\n provideManyDaffMagentoCacheableOperations(\n DAFF_MAGENTO_GET_FILTER_TYPES_QUERY_NAME,\n DAFF_MAGENTO_GET_CATEGORY_AND_PRODUCTS_QUERY_NAME,\n DAFF_MAGENTO_RESOLVE_CATEGORY_URL_QUERY_NAME,\n ),\n provideMagentoCategoryConfig(config),\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.DaffMagentoCategoryResponseTransformService","i2.DaffMagentoAppliedFiltersTransformService"],"mappings":"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"}
|
@@ -31,10 +31,10 @@ class DaffTestingCategoryService {
|
|
31
31
|
products: this.productFactory.createMany(3),
|
32
32
|
});
|
33
33
|
}
|
34
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
35
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
34
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffTestingCategoryService, deps: [{ token: i1.DaffCategoryFactory }, { token: i1.DaffCategoryPageMetadataFactory }, { token: i2.DaffProductFactory }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
35
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffTestingCategoryService, providedIn: 'root' }); }
|
36
36
|
}
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffTestingCategoryService, decorators: [{
|
38
38
|
type: Injectable,
|
39
39
|
args: [{
|
40
40
|
providedIn: 'root',
|
@@ -53,11 +53,11 @@ class DaffCategoryTestingDriverModule {
|
|
53
53
|
],
|
54
54
|
};
|
55
55
|
}
|
56
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
57
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
58
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
56
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryTestingDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
57
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryTestingDriverModule, imports: [CommonModule] }); }
|
58
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryTestingDriverModule, imports: [CommonModule] }); }
|
59
59
|
}
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffCategoryTestingDriverModule, decorators: [{
|
61
61
|
type: NgModule,
|
62
62
|
args: [{
|
63
63
|
imports: [
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-driver-testing.mjs","sources":["../../../libs/category/driver/testing/src/drivers/category.service.ts","../../../libs/category/driver/testing/src/drivers/category-driver.module.ts","../../../libs/category/driver/testing/src/daffodil-category-driver-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { DaffProductFactory } from '@daffodil/product/testing';\n\n/**\n * The category testing driver to mock {@link DaffCategoryServiceInterface}.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffTestingCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private categoryPageMetadataFactory: DaffCategoryPageMetadataFactory,\n private productFactory: DaffProductFactory,\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { provideDaffCategoryDriver } from '@daffodil/category/driver';\n\nimport { DaffTestingCategoryService } from './category.service';\n\n/**\n * A module for providing the {@link DaffTestingCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryTestingDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryTestingDriverModule> {\n return {\n ngModule: DaffCategoryTestingDriverModule,\n providers: [\n provideDaffCategoryDriver(DaffTestingCategoryService),\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAkBA;;;;AAIG;MAIU,0BAA0B,CAAA;AAErC,IAAA,WAAA,CACU,eAAoC,EACpC,2BAA4D,EAC5D,cAAkC,EAAA;QAFlC,IAAe,CAAA,eAAA,GAAf,eAAe
|
1
|
+
{"version":3,"file":"daffodil-category-driver-testing.mjs","sources":["../../../libs/category/driver/testing/src/drivers/category.service.ts","../../../libs/category/driver/testing/src/drivers/category-driver.module.ts","../../../libs/category/driver/testing/src/daffodil-category-driver-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { DaffProductFactory } from '@daffodil/product/testing';\n\n/**\n * The category testing driver to mock {@link DaffCategoryServiceInterface}.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffTestingCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private categoryPageMetadataFactory: DaffCategoryPageMetadataFactory,\n private productFactory: DaffProductFactory,\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { provideDaffCategoryDriver } from '@daffodil/category/driver';\n\nimport { DaffTestingCategoryService } from './category.service';\n\n/**\n * A module for providing the {@link DaffTestingCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryTestingDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryTestingDriverModule> {\n return {\n ngModule: DaffCategoryTestingDriverModule,\n providers: [\n provideDaffCategoryDriver(DaffTestingCategoryService),\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAkBA;;;;AAIG;MAIU,0BAA0B,CAAA;AAErC,IAAA,WAAA,CACU,eAAoC,EACpC,2BAA4D,EAC5D,cAAkC,EAAA;QAFlC,IAAe,CAAA,eAAA,GAAf,eAAe;QACf,IAA2B,CAAA,2BAAA,GAA3B,2BAA2B;QAC3B,IAAc,CAAA,cAAA,GAAd,cAAc;;AAGxB,IAAA,GAAG,CAAC,eAAsC,EAAA;AACxC,QAAA,OAAO,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,SAAA,CAAC;;AAGJ,IAAA,QAAQ,CAAC,eAAuC,EAAA;AAC9C,QAAA,OAAO,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,SAAA,CAAC;;iIArBO,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,+BAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA1B,uBAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,cAFzB,MAAM,EAAA,CAAA,CAAA;;2FAEP,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACfD;;AAEG;MAMU,+BAA+B,CAAA;AAC1C,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,+BAA+B;AACzC,YAAA,SAAS,EAAE;gBACT,yBAAyB,CAAC,0BAA0B,CAAC;AACtD,aAAA;SACF;;iIAPQ,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA/B,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,YAHxC,YAAY,CAAA,EAAA,CAAA,CAAA;AAGH,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,YAHxC,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAGH,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAL3C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA;;;ACjBD;;AAEG;;;;"}
|