@daffodil/category 0.43.1 → 0.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/driver/magento/models/complete-category-response.d.ts +3 -0
- package/esm2020/driver/in-memory/backend/category.service.mjs +3 -3
- package/esm2020/driver/in-memory/drivers/category-driver.module.mjs +4 -4
- package/esm2020/driver/in-memory/drivers/category.service.mjs +3 -3
- package/esm2020/driver/magento/category-driver.module.mjs +4 -4
- package/esm2020/driver/magento/category.service.mjs +8 -6
- package/esm2020/driver/magento/models/complete-category-response.mjs +1 -1
- package/esm2020/driver/magento/testing/factories/category.factory.mjs +3 -3
- package/esm2020/driver/magento/transformers/applied-filter-transformer.service.mjs +3 -3
- package/esm2020/driver/magento/transformers/category-page-config-transformer.service.mjs +4 -4
- package/esm2020/driver/magento/transformers/category-response-transform.service.mjs +3 -3
- package/esm2020/driver/magento/transformers/category-transformer.service.mjs +3 -3
- package/esm2020/driver/testing/drivers/category-driver.module.mjs +4 -4
- package/esm2020/driver/testing/drivers/category.service.mjs +3 -3
- package/esm2020/routing/effects/collection-route.effects.mjs +21 -0
- package/esm2020/routing/injection-tokens/public_api.mjs +2 -0
- package/esm2020/routing/injection-tokens/request/builder.token.mjs +8 -0
- package/esm2020/routing/injection-tokens/request/builders.token.mjs +30 -0
- package/esm2020/routing/module.mjs +72 -0
- package/esm2020/routing/public_api.mjs +3 -1
- package/esm2020/routing/resolvers/category-page/category-page.resolver.mjs +4 -7
- package/esm2020/routing/resolvers/category-page-id/category-page-id.resolver.mjs +11 -8
- package/esm2020/routing/resolvers/category-page-url/category-page-url.resolver.mjs +11 -13
- package/esm2020/state/actions/category-page-filter.actions.mjs +52 -16
- package/esm2020/state/actions/category-page.actions.mjs +1 -37
- package/esm2020/state/category-state.module.mjs +4 -4
- package/esm2020/state/effects/category-page-filter.effects.mjs +8 -8
- package/esm2020/state/effects/category-page.effects.mjs +7 -6
- package/esm2020/state/effects/category.effects.mjs +3 -3
- package/esm2020/state/facades/collection/facade.mjs +20 -0
- package/esm2020/state/facades/page/category-facade.interface.mjs +2 -0
- package/esm2020/state/facades/page/category.facade.mjs +52 -0
- package/esm2020/state/facades/public_api.mjs +3 -0
- package/esm2020/state/public_api.mjs +2 -2
- package/esm2020/state/reducers/category/category-reducer-state.interface.mjs +1 -1
- package/esm2020/state/reducers/category/category.reducer.mjs +14 -114
- package/esm2020/state/reducers/category-reducers.interface.mjs +1 -1
- package/esm2020/state/reducers/category-reducers.mjs +3 -1
- package/esm2020/state/reducers/page-metadata/reducer.mjs +57 -0
- package/esm2020/state/reducers/page-metadata/state.interface.mjs +2 -0
- package/esm2020/state/reducers/public_api.mjs +2 -1
- package/esm2020/state/selectors/category-page/category-page.selector.mjs +3 -23
- package/esm2020/state/selectors/category.selector.mjs +3 -1
- package/esm2020/state/selectors/collection/selectors.mjs +10 -0
- package/esm2020/state/testing/category-testing.module.mjs +8 -5
- package/esm2020/state/testing/mock-category-facade.mjs +3 -13
- package/esm2020/testing/factories/category-page-metadata.factory.mjs +3 -3
- package/esm2020/testing/factories/category.factory.mjs +3 -3
- package/fesm2015/daffodil-category-driver-in-memory.mjs +7 -7
- package/fesm2015/daffodil-category-driver-in-memory.mjs.map +1 -1
- package/fesm2015/daffodil-category-driver-magento-testing.mjs +2 -2
- package/fesm2015/daffodil-category-driver-magento-testing.mjs.map +1 -1
- package/fesm2015/daffodil-category-driver-magento.mjs +19 -17
- package/fesm2015/daffodil-category-driver-magento.mjs.map +1 -1
- package/fesm2015/daffodil-category-driver-testing.mjs +5 -5
- package/fesm2015/daffodil-category-driver-testing.mjs.map +1 -1
- package/fesm2015/daffodil-category-routing.mjs +140 -33
- package/fesm2015/daffodil-category-routing.mjs.map +1 -1
- package/fesm2015/daffodil-category-state-testing.mjs +9 -16
- package/fesm2015/daffodil-category-state-testing.mjs.map +1 -1
- package/fesm2015/daffodil-category-state.mjs +221 -218
- package/fesm2015/daffodil-category-state.mjs.map +1 -1
- package/fesm2015/daffodil-category-testing.mjs +4 -4
- package/fesm2015/daffodil-category-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-in-memory.mjs +7 -7
- package/fesm2020/daffodil-category-driver-in-memory.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-magento-testing.mjs +2 -2
- package/fesm2020/daffodil-category-driver-magento-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-magento.mjs +19 -17
- package/fesm2020/daffodil-category-driver-magento.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-testing.mjs +5 -5
- package/fesm2020/daffodil-category-driver-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category-routing.mjs +140 -29
- package/fesm2020/daffodil-category-routing.mjs.map +1 -1
- package/fesm2020/daffodil-category-state-testing.mjs +9 -16
- package/fesm2020/daffodil-category-state-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category-state.mjs +224 -288
- package/fesm2020/daffodil-category-state.mjs.map +1 -1
- package/fesm2020/daffodil-category-testing.mjs +4 -4
- package/fesm2020/daffodil-category-testing.mjs.map +1 -1
- package/package.json +4 -4
- package/routing/effects/collection-route.effects.d.ts +10 -0
- package/routing/injection-tokens/public_api.d.ts +1 -0
- package/routing/injection-tokens/request/builder.token.d.ts +6 -0
- package/routing/injection-tokens/request/builders.token.d.ts +26 -0
- package/routing/module.d.ts +8 -0
- package/routing/public_api.d.ts +2 -0
- package/routing/resolvers/category-page-id/category-page-id.resolver.d.ts +3 -1
- package/routing/resolvers/category-page-url/category-page-url.resolver.d.ts +3 -3
- package/state/actions/category-page-filter.actions.d.ts +49 -9
- package/state/actions/category-page.actions.d.ts +3 -42
- package/state/effects/category-page-filter.effects.d.ts +2 -2
- package/state/facades/collection/facade.d.ts +9 -0
- package/state/facades/{category-facade.interface.d.ts → page/category-facade.interface.d.ts} +3 -44
- package/state/facades/{category.facade.d.ts → page/category.facade.d.ts} +3 -14
- package/state/facades/public_api.d.ts +3 -0
- package/state/public_api.d.ts +1 -2
- package/state/reducers/category/category-reducer-state.interface.d.ts +5 -5
- package/state/reducers/category/category.reducer.d.ts +2 -2
- package/state/reducers/category-reducers.interface.d.ts +5 -0
- package/state/reducers/page-metadata/reducer.d.ts +11 -0
- package/state/reducers/page-metadata/state.interface.d.ts +2 -0
- package/state/reducers/public_api.d.ts +2 -0
- package/state/selectors/category-page/category-page.selector.d.ts +0 -42
- package/state/selectors/category.selector.d.ts +2 -1
- package/state/selectors/collection/selectors.d.ts +5 -0
- package/state/testing/mock-category-facade.d.ts +2 -13
- package/esm2020/state/facades/category-facade.interface.mjs +0 -2
- package/esm2020/state/facades/category.facade.mjs +0 -62
- package/esm2020/state/reducers/category/pure/build-metadata-from-request.mjs +0 -13
- package/state/reducers/category/pure/build-metadata-from-request.d.ts +0 -2
@@ -125,8 +125,8 @@ class DaffMagentoAppliedFiltersTransformService {
|
|
125
125
|
return Object.assign(Object.assign({}, magentoFilters), this.productFilterRequestsTransformer.transform(daffFilters));
|
126
126
|
}
|
127
127
|
}
|
128
|
-
/** @nocollapse */
|
129
|
-
/** @nocollapse */
|
128
|
+
/** @nocollapse */ DaffMagentoAppliedFiltersTransformService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoAppliedFiltersTransformService, deps: [{ token: i1.MagentoProductAppliedFiltersTransformService }], target: i0.ɵɵFactoryTarget.Injectable });
|
129
|
+
/** @nocollapse */ DaffMagentoAppliedFiltersTransformService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoAppliedFiltersTransformService, providedIn: 'root' });
|
130
130
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoAppliedFiltersTransformService, decorators: [{
|
131
131
|
type: Injectable,
|
132
132
|
args: [{
|
@@ -137,11 +137,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
|
|
137
137
|
class DaffMagentoCategoryPageConfigTransformerService {
|
138
138
|
transform(categoryResponse) {
|
139
139
|
const aggregatesWithoutCategories = categoryResponse.aggregates.filter(aggregate => aggregate.attribute_code !== 'category_id');
|
140
|
-
return Object.assign(Object.assign({}, magentoProductCollectionMetadataTransform(aggregatesWithoutCategories, categoryResponse.page_info, categoryResponse.sort_fields, categoryResponse.products, categoryResponse.total_count)), { id: categoryResponse.category.uid });
|
140
|
+
return Object.assign(Object.assign({}, magentoProductCollectionMetadataTransform(aggregatesWithoutCategories, categoryResponse.page_info, categoryResponse.sort_fields, categoryResponse.products, categoryResponse.total_count, categoryResponse.appliedSortOption, categoryResponse.appliedSortDirection)), { id: categoryResponse.category.uid });
|
141
141
|
}
|
142
142
|
}
|
143
|
-
/** @nocollapse */
|
144
|
-
/** @nocollapse */
|
143
|
+
/** @nocollapse */ DaffMagentoCategoryPageConfigTransformerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryPageConfigTransformerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
144
|
+
/** @nocollapse */ DaffMagentoCategoryPageConfigTransformerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryPageConfigTransformerService, providedIn: 'root' });
|
145
145
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryPageConfigTransformerService, decorators: [{
|
146
146
|
type: Injectable,
|
147
147
|
args: [{
|
@@ -175,8 +175,8 @@ class DaffMagentoCategoryTransformerService {
|
|
175
175
|
};
|
176
176
|
}
|
177
177
|
}
|
178
|
-
/** @nocollapse */
|
179
|
-
/** @nocollapse */
|
178
|
+
/** @nocollapse */ DaffMagentoCategoryTransformerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryTransformerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
179
|
+
/** @nocollapse */ DaffMagentoCategoryTransformerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryTransformerService, providedIn: 'root' });
|
180
180
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryTransformerService, decorators: [{
|
181
181
|
type: Injectable,
|
182
182
|
args: [{
|
@@ -194,8 +194,8 @@ class DaffMagentoCategoryResponseTransformService {
|
|
194
194
|
return Object.assign({ magentoCompleteCategoryResponse: completeCategory }, { category: this.magentoCategoryTransformerService.transform(completeCategory.category, completeCategory.products), categoryPageMetadata: this.magentoCategoryPageConfigurationTransformerService.transform(completeCategory), products: this.magentoProductsTransformService.transformManyMagentoProducts(completeCategory.products, mediaUrl) });
|
195
195
|
}
|
196
196
|
}
|
197
|
-
/** @nocollapse */
|
198
|
-
/** @nocollapse */
|
197
|
+
/** @nocollapse */ DaffMagentoCategoryResponseTransformService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryResponseTransformService, deps: [{ token: DaffMagentoCategoryTransformerService }, { token: DaffMagentoCategoryPageConfigTransformerService }, { token: i1.DaffMagentoProductsTransformer }], target: i0.ɵɵFactoryTarget.Injectable });
|
198
|
+
/** @nocollapse */ DaffMagentoCategoryResponseTransformService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryResponseTransformService, providedIn: 'root' });
|
199
199
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryResponseTransformService, decorators: [{
|
200
200
|
type: Injectable,
|
201
201
|
args: [{
|
@@ -232,7 +232,7 @@ class DaffMagentoCategoryService {
|
|
232
232
|
query: MagentoGetProductsQuery(this.extraPreviewFragments),
|
233
233
|
variables: this.getProductsQueryVariables(categoryRequest),
|
234
234
|
}),
|
235
|
-
]).pipe(map(([category, filterTypes, products,]) => this.transformCategory(category.data, filterTypes.data, products.data, this.productConfig.baseMediaUrl)), map(result => categoryRequest.filterRequests
|
235
|
+
]).pipe(map(([category, filterTypes, products,]) => this.transformCategory(category.data, filterTypes.data, products.data, categoryRequest, this.productConfig.baseMediaUrl)), map(result => categoryRequest.filterRequests
|
236
236
|
? applyFiltersOnResponse(categoryRequest.filterRequests, result)
|
237
237
|
: result));
|
238
238
|
}
|
@@ -254,7 +254,7 @@ class DaffMagentoCategoryService {
|
|
254
254
|
return this.apollo.query({
|
255
255
|
query: MagentoGetProductsQuery(this.extraPreviewFragments),
|
256
256
|
variables: this.getProductsQueryVariables(Object.assign(Object.assign({}, categoryRequest), { id: (_a = category.data.categoryList[0]) === null || _a === void 0 ? void 0 : _a.uid, kind: DaffCategoryRequestKind.ID })),
|
257
|
-
}).pipe(map(products => this.transformCategory(category.data, filterTypes.data, products.data, this.productConfig.baseMediaUrl)), map(result => categoryRequest.filterRequests
|
257
|
+
}).pipe(map(products => this.transformCategory(category.data, filterTypes.data, products.data, categoryRequest, this.productConfig.baseMediaUrl)), map(result => categoryRequest.filterRequests
|
258
258
|
? applyFiltersOnResponse(categoryRequest.filterRequests, result)
|
259
259
|
: result));
|
260
260
|
}));
|
@@ -274,7 +274,7 @@ class DaffMagentoCategoryService {
|
|
274
274
|
}
|
275
275
|
return queryVariables;
|
276
276
|
}
|
277
|
-
transformCategory(categoryResponse, filterTypesResponse, productsResponse, mediaUrl) {
|
277
|
+
transformCategory(categoryResponse, filterTypesResponse, productsResponse, request, mediaUrl) {
|
278
278
|
const aggregations = addMetadataTypesToProductsResponse(filterTypesResponse, productsResponse);
|
279
279
|
const completeCategory = {
|
280
280
|
category: categoryResponse.categoryList[0],
|
@@ -283,12 +283,14 @@ class DaffMagentoCategoryService {
|
|
283
283
|
sort_fields: aggregations.products.sort_fields,
|
284
284
|
total_count: productsResponse.products.total_count,
|
285
285
|
page_info: productsResponse.products.page_info,
|
286
|
+
appliedSortOption: request.appliedSortOption,
|
287
|
+
appliedSortDirection: request.appliedSortDirection,
|
286
288
|
};
|
287
289
|
return this.magentoCategoryResponseTransformer.transform(completeCategory, mediaUrl);
|
288
290
|
}
|
289
291
|
}
|
290
|
-
/** @nocollapse */
|
291
|
-
/** @nocollapse */
|
292
|
+
/** @nocollapse */ DaffMagentoCategoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", 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_PREVIEW_FRAGMENTS }], target: i0.ɵɵFactoryTarget.Injectable });
|
293
|
+
/** @nocollapse */ DaffMagentoCategoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryService, providedIn: 'root' });
|
292
294
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMagentoCategoryService, decorators: [{
|
293
295
|
type: Injectable,
|
294
296
|
args: [{
|
@@ -347,9 +349,9 @@ class DaffCategoryMagentoDriverModule {
|
|
347
349
|
};
|
348
350
|
}
|
349
351
|
}
|
350
|
-
/** @nocollapse */
|
351
|
-
/** @nocollapse */
|
352
|
-
/** @nocollapse */
|
352
|
+
/** @nocollapse */ DaffCategoryMagentoDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryMagentoDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
353
|
+
/** @nocollapse */ DaffCategoryMagentoDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryMagentoDriverModule, imports: [CommonModule] });
|
354
|
+
/** @nocollapse */ DaffCategoryMagentoDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryMagentoDriverModule, imports: [[
|
353
355
|
CommonModule,
|
354
356
|
]] });
|
355
357
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryMagentoDriverModule, decorators: [{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-driver-magento.mjs","sources":["../../../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/fragments/category-tree.ts","../../../libs/category/driver/magento/src/queries/get-category.ts","../../../libs/category/driver/magento/src/queries/get-products.ts","../../../libs/category/driver/magento/src/transformers/pure/add-metadata-types-to-aggregates.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/transformers/category-transformer.service.ts","../../../libs/category/driver/magento/src/transformers/category-response-transform.service.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 {\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 { InjectionToken } from '@angular/core';\n\nimport { MAGENTO_CATEGORY_CONFIG_DEFAULT } from '../config/default';\n\n/**\n * The token used to provide @daffodil/category/driver/magento config data.\n * Mandatory for the Magento driver.\n */\nexport const MAGENTO_CATEGORY_CONFIG_TOKEN = new InjectionToken<DaffCategoryMagentoDriverConfig>('MAGENTO_CATEGORY_CONFIG_TOKEN', { factory: () => MAGENTO_CATEGORY_CONFIG_DEFAULT });\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 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\tproducts {\n\t\t\titems {\n\t\t\t\tsku\n\t\t\t}\n\t\t}\n\t\tchildren_count\n }\n`;\n","import { gql } from 'apollo-angular';\n\nimport { magentoCategoryTreeFragment } from './fragments/public_api';\n\nexport const DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME = 'MagentoGetCategoryQuery';\n\nexport const MagentoGetCategoryQuery = gql`\nquery ${DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME}($filters: CategoryFilterInput){\n\tcategoryList(filters: $filters) {\n\t\t...categoryTree\n\t}\n}\n${magentoCategoryTreeFragment}\n`;\n","import { gql } from 'apollo-angular';\nimport { DocumentNode } from 'graphql';\n\nimport {\n daffBuildFragmentDefinition,\n daffBuildFragmentNameSpread,\n} from '@daffodil/core/graphql';\nimport {\n magentoProductAggregationsFragment,\n magentoProductFragment,\n magentoProductPageInfoFragment,\n magentoProductSortFieldsFragment,\n} from '@daffodil/product/driver/magento';\n\nexport const DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME = 'MagentoGetProducts';\n// TODO(griest024): should this be using the product preview fragment instead?\n/**\n * This query only exists because products and their associated aggregations/filter cannot\n * be retrieved through a category call.\n */\nexport const MagentoGetProductsQuery = (extraProductFragments: DocumentNode[] = []) => gql`\nquery ${DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME}($filter: ProductAttributeFilterInput!, $search: String, $pageSize: Int, $currentPage: Int, $sort: ProductAttributeSortInput)\n{\n\tproducts(filter: $filter, 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...magentoProductPageInfo\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${magentoProductFragment}\n${magentoProductPageInfoFragment}\n${magentoProductSortFieldsFragment}\n${magentoProductAggregationsFragment}\n${daffBuildFragmentDefinition(...extraProductFragments)}\n`;\n","import {\n MagentoProductGetFilterTypesResponse,\n magentoProductGetMatchedAttributeType,\n} from '@daffodil/product/driver/magento';\n\nimport { MagentoGetProductsResponse } from '../../models/public_api';\n\nexport function addMetadataTypesToProductsResponse(\n attributeResponse: MagentoProductGetFilterTypesResponse,\n aggregationResponse: MagentoGetProductsResponse,\n): MagentoGetProductsResponse {\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 { Injectable } from '@angular/core';\n\nimport { DaffCategory } from '@daffodil/category';\nimport { DaffProductFilterRequest } from '@daffodil/product';\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: DaffProductFilterRequest[]): 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 ),\n id: categoryResponse.category.uid,\n };\n }\n}\n","import { Injectable } 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';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryTransformerService {\n\n transform(category: MagentoCategory, products: MagentoProduct[]): DaffCategory {\n return {\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 { Injectable } from '@angular/core';\n\nimport { DaffGetCategoryResponse } from '@daffodil/category';\nimport { DaffMagentoProductsTransformer } from '@daffodil/product/driver/magento';\n\nimport { MagentoCompleteCategoryResponse } from '../models/public_api';\nimport { DaffMagentoCategoryPageConfigTransformerService } from './category-page-config-transformer.service';\nimport { DaffMagentoCategoryTransformerService } from './category-transformer.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryResponseTransformService {\n\n constructor(\n private magentoCategoryTransformerService: DaffMagentoCategoryTransformerService,\n private magentoCategoryPageConfigurationTransformerService: DaffMagentoCategoryPageConfigTransformerService,\n private magentoProductsTransformService: DaffMagentoProductsTransformer,\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: this.magentoProductsTransformService.transformManyMagentoProducts(completeCategory.products, mediaUrl),\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} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n daffApplyRequestsToFilters,\n DaffProductFilterRequest,\n} from '@daffodil/product';\nimport {\n DaffProductMagentoDriverConfig,\n DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS,\n MagentoProductGetFilterTypes,\n MagentoProductGetFilterTypesResponse,\n MAGENTO_PRODUCT_CONFIG_TOKEN,\n magentoAppliedSortOptionTransform,\n} from '@daffodil/product/driver/magento';\n\nimport {\n MAGENTO_CATEGORY_CONFIG_TOKEN,\n DaffCategoryMagentoDriverConfig,\n} from './interfaces/public_api';\nimport {\n MagentoGetACategoryResponse,\n MagentoGetProductsResponse,\n MagentoGetProductsByCategoriesRequest,\n} from './models/public_api';\nimport {\n MagentoGetProductsQuery,\n MagentoGetCategoryQuery,\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: DaffProductFilterRequest[], 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_PREVIEW_FRAGMENTS) private extraPreviewFragments: DocumentNode[],\n ) {}\n\n //todo the MagentoGetCategoryQuery needs to get its own product ids.\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return combineLatest([\n this.apollo.query<MagentoGetACategoryResponse>({\n query: MagentoGetCategoryQuery,\n variables: { filters: { category_uid: { eq: categoryRequest.id }}},\n }),\n this.apollo.query<MagentoProductGetFilterTypesResponse>({\n query: MagentoProductGetFilterTypes,\n }),\n this.apollo.query<MagentoGetProductsResponse>({\n query: MagentoGetProductsQuery(this.extraPreviewFragments),\n variables: this.getProductsQueryVariables(categoryRequest),\n }),\n ]).pipe(\n map(([\n category,\n filterTypes,\n products,\n ]) => this.transformCategory(category.data, filterTypes.data, products.data, 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<MagentoGetACategoryResponse>({\n query: MagentoGetCategoryQuery,\n variables: { filters: { url_path: {\n eq: this.config.truncateUrl\n ? this.config.uriTruncationStrategy(categoryRequest.url)\n : 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<MagentoGetProductsResponse>({\n query: MagentoGetProductsQuery(this.extraPreviewFragments),\n variables: this.getProductsQueryVariables({\n ...categoryRequest,\n id: category.data.categoryList[0]?.uid,\n kind: DaffCategoryRequestKind.ID,\n }),\n }).pipe(\n map(products => this.transformCategory(category.data, filterTypes.data, products.data, this.productConfig.baseMediaUrl)),\n map(result => categoryRequest.filterRequests\n ? applyFiltersOnResponse(categoryRequest.filterRequests, result)\n : result,\n ),\n )),\n );\n }\n\n private getProductsQueryVariables(request: DaffCategoryIdRequest): MagentoGetProductsByCategoriesRequest {\n const queryVariables = {\n filter: this.magentoAppliedFiltersTransformer.transform(request.id, request.filterRequests),\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: MagentoGetACategoryResponse,\n filterTypesResponse: MagentoProductGetFilterTypesResponse,\n productsResponse: MagentoGetProductsResponse,\n mediaUrl: string,\n ): DaffGetCategoryResponse {\n const aggregations = addMetadataTypesToProductsResponse(filterTypesResponse, productsResponse);\n const completeCategory = {\n category: categoryResponse.categoryList[0],\n products: productsResponse.products.items,\n aggregates: aggregations.products.aggregations,\n sort_fields: aggregations.products.sort_fields,\n total_count: productsResponse.products.total_count,\n page_info: productsResponse.products.page_info,\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 { DaffCategoryDriver } from '@daffodil/category/driver';\nimport { DAFF_MAGENTO_CACHEABLE_OPERATIONS } 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 MAGENTO_CATEGORY_CONFIG_TOKEN,\n} from './interfaces/public_api';\nimport { DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME } from './queries/get-category';\nimport { DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME } from './queries/get-products';\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 {\n provide: DaffCategoryDriver,\n useExisting: DaffMagentoCategoryService,\n },\n DaffMagentoCategoryPageConfigTransformerService,\n DaffMagentoCategoryResponseTransformService,\n DaffMagentoCategoryTransformerService,\n DaffMagentoAppliedFiltersTransformService,\n {\n provide: DAFF_MAGENTO_CACHEABLE_OPERATIONS,\n useValue: DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME,\n multi: true,\n },\n {\n provide: DAFF_MAGENTO_CACHEABLE_OPERATIONS,\n useValue: DAFF_MAGENTO_GET_FILTER_TYPES_QUERY_NAME,\n multi: true,\n },\n {\n provide: DAFF_MAGENTO_CACHEABLE_OPERATIONS,\n useValue: DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME,\n multi: true,\n },\n {\n provide: MAGENTO_CATEGORY_CONFIG_TOKEN,\n useValue: {\n ...MAGENTO_CATEGORY_CONFIG_DEFAULT,\n ...config,\n },\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffMagentoCategoryTransformerService","i2.DaffMagentoCategoryPageConfigTransformerService","i3","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/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/fragments/category-tree.ts","../../../libs/category/driver/magento/src/queries/get-category.ts","../../../libs/category/driver/magento/src/queries/get-products.ts","../../../libs/category/driver/magento/src/transformers/pure/add-metadata-types-to-aggregates.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/transformers/category-transformer.service.ts","../../../libs/category/driver/magento/src/transformers/category-response-transform.service.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 {\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 { InjectionToken } from '@angular/core';\n\nimport { MAGENTO_CATEGORY_CONFIG_DEFAULT } from '../config/default';\n\n/**\n * The token used to provide @daffodil/category/driver/magento config data.\n * Mandatory for the Magento driver.\n */\nexport const MAGENTO_CATEGORY_CONFIG_TOKEN = new InjectionToken<DaffCategoryMagentoDriverConfig>('MAGENTO_CATEGORY_CONFIG_TOKEN', { factory: () => MAGENTO_CATEGORY_CONFIG_DEFAULT });\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 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\tproducts {\n\t\t\titems {\n\t\t\t\tsku\n\t\t\t}\n\t\t}\n\t\tchildren_count\n }\n`;\n","import { gql } from 'apollo-angular';\n\nimport { magentoCategoryTreeFragment } from './fragments/public_api';\n\nexport const DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME = 'MagentoGetCategoryQuery';\n\nexport const MagentoGetCategoryQuery = gql`\nquery ${DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME}($filters: CategoryFilterInput){\n\tcategoryList(filters: $filters) {\n\t\t...categoryTree\n\t}\n}\n${magentoCategoryTreeFragment}\n`;\n","import { gql } from 'apollo-angular';\nimport { DocumentNode } from 'graphql';\n\nimport {\n daffBuildFragmentDefinition,\n daffBuildFragmentNameSpread,\n} from '@daffodil/core/graphql';\nimport {\n magentoProductAggregationsFragment,\n magentoProductFragment,\n magentoProductPageInfoFragment,\n magentoProductSortFieldsFragment,\n} from '@daffodil/product/driver/magento';\n\nexport const DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME = 'MagentoGetProducts';\n// TODO(griest024): should this be using the product preview fragment instead?\n/**\n * This query only exists because products and their associated aggregations/filter cannot\n * be retrieved through a category call.\n */\nexport const MagentoGetProductsQuery = (extraProductFragments: DocumentNode[] = []) => gql`\nquery ${DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME}($filter: ProductAttributeFilterInput!, $search: String, $pageSize: Int, $currentPage: Int, $sort: ProductAttributeSortInput)\n{\n\tproducts(filter: $filter, 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...magentoProductPageInfo\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${magentoProductFragment}\n${magentoProductPageInfoFragment}\n${magentoProductSortFieldsFragment}\n${magentoProductAggregationsFragment}\n${daffBuildFragmentDefinition(...extraProductFragments)}\n`;\n","import {\n MagentoProductGetFilterTypesResponse,\n magentoProductGetMatchedAttributeType,\n} from '@daffodil/product/driver/magento';\n\nimport { MagentoGetProductsResponse } from '../../models/public_api';\n\nexport function addMetadataTypesToProductsResponse(\n attributeResponse: MagentoProductGetFilterTypesResponse,\n aggregationResponse: MagentoGetProductsResponse,\n): MagentoGetProductsResponse {\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 { Injectable } from '@angular/core';\n\nimport { DaffCategory } from '@daffodil/category';\nimport { DaffProductFilterRequest } from '@daffodil/product';\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: DaffProductFilterRequest[]): 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","import { Injectable } 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';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryTransformerService {\n\n transform(category: MagentoCategory, products: MagentoProduct[]): DaffCategory {\n return {\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 { Injectable } from '@angular/core';\n\nimport { DaffGetCategoryResponse } from '@daffodil/category';\nimport { DaffMagentoProductsTransformer } from '@daffodil/product/driver/magento';\n\nimport { MagentoCompleteCategoryResponse } from '../models/public_api';\nimport { DaffMagentoCategoryPageConfigTransformerService } from './category-page-config-transformer.service';\nimport { DaffMagentoCategoryTransformerService } from './category-transformer.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffMagentoCategoryResponseTransformService {\n\n constructor(\n private magentoCategoryTransformerService: DaffMagentoCategoryTransformerService,\n private magentoCategoryPageConfigurationTransformerService: DaffMagentoCategoryPageConfigTransformerService,\n private magentoProductsTransformService: DaffMagentoProductsTransformer,\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: this.magentoProductsTransformService.transformManyMagentoProducts(completeCategory.products, mediaUrl),\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 DaffProductFilterRequest,\n} from '@daffodil/product';\nimport {\n DaffProductMagentoDriverConfig,\n DAFF_PRODUCT_MAGENTO_EXTRA_PRODUCT_PREVIEW_FRAGMENTS,\n MagentoProductGetFilterTypes,\n MagentoProductGetFilterTypesResponse,\n MAGENTO_PRODUCT_CONFIG_TOKEN,\n magentoAppliedSortOptionTransform,\n} from '@daffodil/product/driver/magento';\n\nimport {\n MAGENTO_CATEGORY_CONFIG_TOKEN,\n DaffCategoryMagentoDriverConfig,\n} from './interfaces/public_api';\nimport {\n MagentoGetACategoryResponse,\n MagentoGetProductsResponse,\n MagentoGetProductsByCategoriesRequest,\n MagentoCompleteCategoryResponse,\n} from './models/public_api';\nimport {\n MagentoGetProductsQuery,\n MagentoGetCategoryQuery,\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: DaffProductFilterRequest[], 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_PREVIEW_FRAGMENTS) private extraPreviewFragments: DocumentNode[],\n ) {}\n\n //todo the MagentoGetCategoryQuery needs to get its own product ids.\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return combineLatest([\n this.apollo.query<MagentoGetACategoryResponse>({\n query: MagentoGetCategoryQuery,\n variables: { filters: { category_uid: { eq: categoryRequest.id }}},\n }),\n this.apollo.query<MagentoProductGetFilterTypesResponse>({\n query: MagentoProductGetFilterTypes,\n }),\n this.apollo.query<MagentoGetProductsResponse>({\n query: MagentoGetProductsQuery(this.extraPreviewFragments),\n variables: this.getProductsQueryVariables(categoryRequest),\n }),\n ]).pipe(\n map(([\n category,\n filterTypes,\n products,\n ]) => this.transformCategory(category.data, filterTypes.data, products.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<MagentoGetACategoryResponse>({\n query: MagentoGetCategoryQuery,\n variables: { filters: { url_path: {\n eq: this.config.truncateUrl\n ? this.config.uriTruncationStrategy(categoryRequest.url)\n : 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<MagentoGetProductsResponse>({\n query: MagentoGetProductsQuery(this.extraPreviewFragments),\n variables: this.getProductsQueryVariables({\n ...categoryRequest,\n id: category.data.categoryList[0]?.uid,\n kind: DaffCategoryRequestKind.ID,\n }),\n }).pipe(\n map(products => this.transformCategory(category.data, filterTypes.data, products.data, categoryRequest, this.productConfig.baseMediaUrl)),\n map(result => categoryRequest.filterRequests\n ? applyFiltersOnResponse(categoryRequest.filterRequests, result)\n : result,\n ),\n )),\n );\n }\n\n private getProductsQueryVariables(request: DaffCategoryIdRequest): MagentoGetProductsByCategoriesRequest {\n const queryVariables = {\n filter: this.magentoAppliedFiltersTransformer.transform(request.id, request.filterRequests),\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: MagentoGetACategoryResponse,\n filterTypesResponse: MagentoProductGetFilterTypesResponse,\n productsResponse: MagentoGetProductsResponse,\n request: DaffCategoryRequest,\n mediaUrl: string,\n ): DaffGetCategoryResponse {\n const aggregations = addMetadataTypesToProductsResponse(filterTypesResponse, productsResponse);\n const completeCategory: MagentoCompleteCategoryResponse = {\n category: categoryResponse.categoryList[0],\n products: productsResponse.products.items,\n aggregates: aggregations.products.aggregations,\n sort_fields: aggregations.products.sort_fields,\n total_count: productsResponse.products.total_count,\n page_info: productsResponse.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 { DaffCategoryDriver } from '@daffodil/category/driver';\nimport { DAFF_MAGENTO_CACHEABLE_OPERATIONS } 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 MAGENTO_CATEGORY_CONFIG_TOKEN,\n} from './interfaces/public_api';\nimport { DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME } from './queries/get-category';\nimport { DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME } from './queries/get-products';\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 {\n provide: DaffCategoryDriver,\n useExisting: DaffMagentoCategoryService,\n },\n DaffMagentoCategoryPageConfigTransformerService,\n DaffMagentoCategoryResponseTransformService,\n DaffMagentoCategoryTransformerService,\n DaffMagentoAppliedFiltersTransformService,\n {\n provide: DAFF_MAGENTO_CACHEABLE_OPERATIONS,\n useValue: DAFF_MAGENTO_GET_CATEGORY_QUERY_NAME,\n multi: true,\n },\n {\n provide: DAFF_MAGENTO_CACHEABLE_OPERATIONS,\n useValue: DAFF_MAGENTO_GET_FILTER_TYPES_QUERY_NAME,\n multi: true,\n },\n {\n provide: DAFF_MAGENTO_CACHEABLE_OPERATIONS,\n useValue: DAFF_MAGENTO_GET_PRODUCTS_QUERY_NAME,\n multi: true,\n },\n {\n provide: MAGENTO_CATEGORY_CONFIG_TOKEN,\n useValue: {\n ...MAGENTO_CATEGORY_CONFIG_DEFAULT,\n ...config,\n },\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffMagentoCategoryTransformerService","i2.DaffMagentoCategoryPageConfigTransformerService","i3","i1","i2.DaffMagentoCategoryResponseTransformService","i2.DaffMagentoAppliedFiltersTransformService"],"mappings":"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"}
|
@@ -32,8 +32,8 @@ class DaffTestingCategoryService {
|
|
32
32
|
});
|
33
33
|
}
|
34
34
|
}
|
35
|
-
/** @nocollapse */
|
36
|
-
/** @nocollapse */
|
35
|
+
/** @nocollapse */ DaffTestingCategoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffTestingCategoryService, deps: [{ token: i1.DaffCategoryFactory }, { token: i1.DaffCategoryPageMetadataFactory }, { token: i2.DaffProductFactory }], target: i0.ɵɵFactoryTarget.Injectable });
|
36
|
+
/** @nocollapse */ DaffTestingCategoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffTestingCategoryService, providedIn: 'root' });
|
37
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffTestingCategoryService, decorators: [{
|
38
38
|
type: Injectable,
|
39
39
|
args: [{
|
@@ -57,9 +57,9 @@ class DaffCategoryTestingDriverModule {
|
|
57
57
|
};
|
58
58
|
}
|
59
59
|
}
|
60
|
-
/** @nocollapse */
|
61
|
-
/** @nocollapse */
|
62
|
-
/** @nocollapse */
|
60
|
+
/** @nocollapse */ DaffCategoryTestingDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryTestingDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
61
|
+
/** @nocollapse */ DaffCategoryTestingDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryTestingDriverModule, imports: [CommonModule] });
|
62
|
+
/** @nocollapse */ DaffCategoryTestingDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryTestingDriverModule, imports: [[
|
63
63
|
CommonModule,
|
64
64
|
]] });
|
65
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryTestingDriverModule, decorators: [{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-driver-testing.mjs","sources":["../../../libs/category/driver/testing/src/drivers/category.service.ts","../../../libs/category/driver/testing/src/drivers/category-driver.module.ts","../../../libs/category/driver/testing/src/daffodil-category-driver-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { DaffProductFactory } from '@daffodil/product/testing';\n\n/**\n * The category testing driver to mock {@link DaffCategoryServiceInterface}.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffTestingCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private categoryPageMetadataFactory: DaffCategoryPageMetadataFactory,\n private productFactory: DaffProductFactory,\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { DaffCategoryDriver } from '@daffodil/category/driver';\n\nimport { DaffTestingCategoryService } from './category.service';\n\n/**\n * A module for providing the {@link DaffTestingCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryTestingDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryTestingDriverModule> {\n return {\n ngModule: DaffCategoryTestingDriverModule,\n providers: [\n {\n provide: DaffCategoryDriver,\n useExisting: DaffTestingCategoryService,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAkBA;;;;AAIG;MAIU,0BAA0B,CAAA;AAErC,IAAA,WAAA,CACU,eAAoC,EACpC,2BAA4D,EAC5D,cAAkC,EAAA;AAFlC,QAAA,IAAe,CAAA,eAAA,GAAf,eAAe,CAAqB;AACpC,QAAA,IAA2B,CAAA,2BAAA,GAA3B,2BAA2B,CAAiC;AAC5D,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAAoB;KACxC;AAEJ,IAAA,GAAG,CAAC,eAAsC,EAAA;AACxC,QAAA,OAAO,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,SAAA,CAAC,CAAC;KACJ;AAED,IAAA,QAAQ,CAAC,eAAuC,EAAA;AAC9C,QAAA,OAAO,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,SAAA,CAAC,CAAC;KACJ;;
|
1
|
+
{"version":3,"file":"daffodil-category-driver-testing.mjs","sources":["../../../libs/category/driver/testing/src/drivers/category.service.ts","../../../libs/category/driver/testing/src/drivers/category-driver.module.ts","../../../libs/category/driver/testing/src/daffodil-category-driver-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n DaffGetCategoryResponse,\n DaffCategoryIdRequest,\n DaffCategoryUrlRequest,\n} from '@daffodil/category';\nimport { DaffCategoryServiceInterface } from '@daffodil/category/driver';\nimport {\n DaffCategoryFactory,\n DaffCategoryPageMetadataFactory,\n} from '@daffodil/category/testing';\nimport { DaffProductFactory } from '@daffodil/product/testing';\n\n/**\n * The category testing driver to mock {@link DaffCategoryServiceInterface}.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffTestingCategoryService implements DaffCategoryServiceInterface {\n\n constructor(\n private categoryFactory: DaffCategoryFactory,\n private categoryPageMetadataFactory: DaffCategoryPageMetadataFactory,\n private productFactory: DaffProductFactory,\n ) {}\n\n get(categoryRequest: DaffCategoryIdRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n\n getByUrl(categoryRequest: DaffCategoryUrlRequest): Observable<DaffGetCategoryResponse> {\n return of({\n category: this.categoryFactory.create(),\n categoryPageMetadata: this.categoryPageMetadataFactory.create(),\n products: this.productFactory.createMany(3),\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { DaffCategoryDriver } from '@daffodil/category/driver';\n\nimport { DaffTestingCategoryService } from './category.service';\n\n/**\n * A module for providing the {@link DaffTestingCategoryService} for the {@link DaffCategoryDriver} token.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCategoryTestingDriverModule {\n static forRoot(): ModuleWithProviders<DaffCategoryTestingDriverModule> {\n return {\n ngModule: DaffCategoryTestingDriverModule,\n providers: [\n {\n provide: DaffCategoryDriver,\n useExisting: DaffTestingCategoryService,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -1,43 +1,53 @@
|
|
1
1
|
import * as i0 from '@angular/core';
|
2
|
-
import { PLATFORM_ID, Injectable, Inject } from '@angular/core';
|
2
|
+
import { InjectionToken, PLATFORM_ID, Injectable, Inject, inject, NgModule } from '@angular/core';
|
3
3
|
import { isPlatformBrowser } from '@angular/common';
|
4
|
-
import
|
4
|
+
import * as i1$1 from '@ngrx/effects';
|
5
|
+
import { ofType, EffectsModule } from '@ngrx/effects';
|
5
6
|
import { of } from 'rxjs';
|
6
7
|
import { mapTo, take } from 'rxjs/operators';
|
7
8
|
import { DaffCategoryRequestKind } from '@daffodil/category';
|
8
|
-
import
|
9
|
+
import * as i3 from '@daffodil/category/state';
|
10
|
+
import { DaffCategoryPageLoad, DaffCategoryPageActionTypes, DaffCategoryPageLoadByUrl, DaffCategoryPageProductCollectionActionTypes } from '@daffodil/category/state';
|
9
11
|
import * as i1 from '@ngrx/store';
|
10
12
|
import * as i2 from '@daffodil/core/routing';
|
13
|
+
import * as i4 from '@daffodil/product/routing';
|
14
|
+
import { DaffProductRoutingCollectionEffects, DaffProductRoutingModule, DaffProductGetCollectionRequestFromRoute } from '@daffodil/product/routing';
|
15
|
+
import * as i2$1 from '@angular/router';
|
16
|
+
|
17
|
+
/**
|
18
|
+
* An internal token to combine the {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS} into a single builder.
|
19
|
+
*/
|
20
|
+
const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER = new InjectionToken('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER', {
|
21
|
+
factory: () => () => ({}),
|
22
|
+
});
|
11
23
|
|
12
24
|
/**
|
13
25
|
* Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url
|
14
26
|
* of the form `some/url/{id}` where `{id}` is the category id.
|
15
27
|
*/
|
16
28
|
class DaffCategoryPageIdResolver {
|
17
|
-
constructor(platformId, store, dispatcher) {
|
29
|
+
constructor(platformId, requestBuilder, store, dispatcher) {
|
18
30
|
this.platformId = platformId;
|
31
|
+
this.requestBuilder = requestBuilder;
|
19
32
|
this.store = store;
|
20
33
|
this.dispatcher = dispatcher;
|
21
34
|
}
|
22
35
|
resolve(route) {
|
23
|
-
this.store.dispatch(new DaffCategoryPageLoad({
|
24
|
-
id: route.paramMap.get('id'),
|
25
|
-
kind: DaffCategoryRequestKind.ID,
|
26
|
-
}));
|
36
|
+
this.store.dispatch(new DaffCategoryPageLoad(Object.assign(Object.assign({}, this.requestBuilder(route)), { id: route.paramMap.get('id'), kind: DaffCategoryRequestKind.ID })));
|
27
37
|
return isPlatformBrowser(this.platformId) ? of(true) : this.dispatcher.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction, DaffCategoryPageActionTypes.CategoryPageLoadFailureAction), mapTo(true), take(1));
|
28
38
|
}
|
29
39
|
}
|
30
|
-
/** @nocollapse */
|
31
|
-
/** @nocollapse */
|
40
|
+
/** @nocollapse */ DaffCategoryPageIdResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageIdResolver, deps: [{ token: PLATFORM_ID }, { token: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER }, { token: i1.Store }, { token: i1.ActionsSubject }], target: i0.ɵɵFactoryTarget.Injectable });
|
41
|
+
/** @nocollapse */ DaffCategoryPageIdResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageIdResolver });
|
32
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageIdResolver, decorators: [{
|
33
|
-
type: Injectable
|
34
|
-
args: [{
|
35
|
-
providedIn: 'root',
|
36
|
-
}]
|
43
|
+
type: Injectable
|
37
44
|
}], ctorParameters: function () {
|
38
45
|
return [{ type: undefined, decorators: [{
|
39
46
|
type: Inject,
|
40
47
|
args: [PLATFORM_ID]
|
48
|
+
}] }, { type: undefined, decorators: [{
|
49
|
+
type: Inject,
|
50
|
+
args: [DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER]
|
41
51
|
}] }, { type: i1.Store }, { type: i1.ActionsSubject }];
|
42
52
|
} });
|
43
53
|
|
@@ -56,54 +66,151 @@ class DaffCategoryPageResolver {
|
|
56
66
|
return this.categoryPageIdResolver.resolve(route);
|
57
67
|
}
|
58
68
|
}
|
59
|
-
/** @nocollapse */
|
60
|
-
/** @nocollapse */
|
69
|
+
/** @nocollapse */ DaffCategoryPageResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageResolver, deps: [{ token: DaffCategoryPageIdResolver }], target: i0.ɵɵFactoryTarget.Injectable });
|
70
|
+
/** @nocollapse */ DaffCategoryPageResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageResolver });
|
61
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageResolver, decorators: [{
|
62
|
-
type: Injectable
|
63
|
-
args: [{
|
64
|
-
providedIn: 'root',
|
65
|
-
}]
|
72
|
+
type: Injectable
|
66
73
|
}], ctorParameters: function () { return [{ type: DaffCategoryPageIdResolver }]; } });
|
67
74
|
|
68
|
-
const getPage = (route) => route.queryParams.p || route.queryParams.page;
|
69
75
|
/**
|
70
76
|
* Resolves category data for category pages, and will only resolve the url
|
71
77
|
* after a category request succeeds or fails. This resolver will take a full
|
72
78
|
* a url of the form `some/url.html(secondary:outlet)?query=param#fragment` and attempt to resolve a product from it.
|
73
79
|
* Assumes that the URL to be resolved is the primary outlet.
|
74
|
-
*
|
75
|
-
* Will check the `p` and `page` query params for a page number value.
|
76
80
|
*/
|
77
81
|
class DaffCategoryPageUrlResolver {
|
78
|
-
constructor(platformId, store, dispatcher, urlNormalizer) {
|
82
|
+
constructor(platformId, requestBuilder, store, dispatcher, urlNormalizer) {
|
79
83
|
this.platformId = platformId;
|
84
|
+
this.requestBuilder = requestBuilder;
|
80
85
|
this.store = store;
|
81
86
|
this.dispatcher = dispatcher;
|
82
87
|
this.urlNormalizer = urlNormalizer;
|
83
88
|
}
|
84
89
|
resolve(route, state) {
|
85
|
-
|
86
|
-
this.store.dispatch(new DaffCategoryPageLoadByUrl(Object.assign({ url: this.urlNormalizer.normalize(state.url), kind: DaffCategoryRequestKind.URL }, (currentPage ? { currentPage: Number(currentPage) } : {}))));
|
90
|
+
this.store.dispatch(new DaffCategoryPageLoadByUrl(Object.assign(Object.assign({}, this.requestBuilder(route)), { url: this.urlNormalizer.normalize(state.url), kind: DaffCategoryRequestKind.URL })));
|
87
91
|
return isPlatformBrowser(this.platformId) ? of(true) : this.dispatcher.pipe(ofType(DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction, DaffCategoryPageActionTypes.CategoryPageLoadFailureAction), mapTo(true), take(1));
|
88
92
|
}
|
89
93
|
}
|
90
|
-
/** @nocollapse */
|
91
|
-
/** @nocollapse */
|
94
|
+
/** @nocollapse */ DaffCategoryPageUrlResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageUrlResolver, deps: [{ token: PLATFORM_ID }, { token: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER }, { token: i1.Store }, { token: i1.ActionsSubject }, { token: i2.DaffRoutingUriNormalizer }], target: i0.ɵɵFactoryTarget.Injectable });
|
95
|
+
/** @nocollapse */ DaffCategoryPageUrlResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageUrlResolver });
|
92
96
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageUrlResolver, decorators: [{
|
93
|
-
type: Injectable
|
94
|
-
args: [{
|
95
|
-
providedIn: 'root',
|
96
|
-
}]
|
97
|
+
type: Injectable
|
97
98
|
}], ctorParameters: function () {
|
98
99
|
return [{ type: undefined, decorators: [{
|
99
100
|
type: Inject,
|
100
101
|
args: [PLATFORM_ID]
|
102
|
+
}] }, { type: undefined, decorators: [{
|
103
|
+
type: Inject,
|
104
|
+
args: [DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER]
|
101
105
|
}] }, { type: i1.Store }, { type: i1.ActionsSubject }, { type: i2.DaffRoutingUriNormalizer }];
|
102
106
|
} });
|
103
107
|
|
108
|
+
/**
|
109
|
+
* A multi-provider injection token for category request builders.
|
110
|
+
* These builders are called with the requested route during the resolve step
|
111
|
+
* and return options to pass to the category driver.
|
112
|
+
*/
|
113
|
+
const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS = new InjectionToken('DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS', { factory: () => [] });
|
114
|
+
/**
|
115
|
+
* Provides category request builders for the routing layer.
|
116
|
+
*
|
117
|
+
* See {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS}.
|
118
|
+
*
|
119
|
+
* ```ts
|
120
|
+
* providers: [
|
121
|
+
* ...daffProvideCategoryRoutingRequestBuilders(
|
122
|
+
* route => ({
|
123
|
+
* currentPage: route.queryParams.page
|
124
|
+
* })
|
125
|
+
* )
|
126
|
+
* ]
|
127
|
+
* ```
|
128
|
+
*/
|
129
|
+
function daffProvideCategoryRoutingRequestBuilders(...builders) {
|
130
|
+
return builders.map(builder => ({
|
131
|
+
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
|
132
|
+
useValue: builder,
|
133
|
+
multi: true,
|
134
|
+
}));
|
135
|
+
}
|
136
|
+
|
137
|
+
class DaffCategoryRoutingCollectionEffects extends DaffProductRoutingCollectionEffects {
|
138
|
+
constructor(actions$, router, collectionFacade, getQueryParams, route) {
|
139
|
+
super(actions$, router, Object.values(DaffCategoryPageProductCollectionActionTypes), collectionFacade, getQueryParams, route);
|
140
|
+
}
|
141
|
+
}
|
142
|
+
/** @nocollapse */ DaffCategoryRoutingCollectionEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingCollectionEffects, deps: [{ token: i1$1.Actions }, { token: i2$1.Router }, { token: i3.DaffCategoryProductCollectionFacade }, { token: i4.DaffProductGetQueryParamsFromRequest }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
|
143
|
+
/** @nocollapse */ DaffCategoryRoutingCollectionEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingCollectionEffects });
|
144
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingCollectionEffects, decorators: [{
|
145
|
+
type: Injectable
|
146
|
+
}], ctorParameters: function () { return [{ type: i1$1.Actions }, { type: i2$1.Router }, { type: i3.DaffCategoryProductCollectionFacade }, { type: i4.DaffProductGetQueryParamsFromRequest }, { type: i2$1.ActivatedRoute }]; } });
|
147
|
+
|
148
|
+
class DaffCategoryRoutingModule {
|
149
|
+
}
|
150
|
+
/** @nocollapse */ DaffCategoryRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
151
|
+
/** @nocollapse */ DaffCategoryRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingModule, imports: [DaffProductRoutingModule, i1$1.EffectsFeatureModule] });
|
152
|
+
/** @nocollapse */ DaffCategoryRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingModule, providers: [
|
153
|
+
DaffCategoryPageResolver,
|
154
|
+
DaffCategoryPageIdResolver,
|
155
|
+
DaffCategoryPageUrlResolver,
|
156
|
+
{
|
157
|
+
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
|
158
|
+
useFactory: (() => {
|
159
|
+
const service = inject(DaffProductGetCollectionRequestFromRoute);
|
160
|
+
const builder = (route => service.getRequest(route.queryParamMap));
|
161
|
+
return builder;
|
162
|
+
}),
|
163
|
+
multi: true,
|
164
|
+
},
|
165
|
+
{
|
166
|
+
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,
|
167
|
+
useFactory: (() => {
|
168
|
+
const builders = inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS);
|
169
|
+
return ((route) => Object.assign({}, ...builders.map((builder => builder(route)))));
|
170
|
+
}),
|
171
|
+
},
|
172
|
+
], imports: [[
|
173
|
+
DaffProductRoutingModule,
|
174
|
+
EffectsModule.forFeature([
|
175
|
+
DaffCategoryRoutingCollectionEffects,
|
176
|
+
]),
|
177
|
+
]] });
|
178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryRoutingModule, decorators: [{
|
179
|
+
type: NgModule,
|
180
|
+
args: [{
|
181
|
+
imports: [
|
182
|
+
DaffProductRoutingModule,
|
183
|
+
EffectsModule.forFeature([
|
184
|
+
DaffCategoryRoutingCollectionEffects,
|
185
|
+
]),
|
186
|
+
],
|
187
|
+
providers: [
|
188
|
+
DaffCategoryPageResolver,
|
189
|
+
DaffCategoryPageIdResolver,
|
190
|
+
DaffCategoryPageUrlResolver,
|
191
|
+
{
|
192
|
+
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
|
193
|
+
useFactory: (() => {
|
194
|
+
const service = inject(DaffProductGetCollectionRequestFromRoute);
|
195
|
+
const builder = (route => service.getRequest(route.queryParamMap));
|
196
|
+
return builder;
|
197
|
+
}),
|
198
|
+
multi: true,
|
199
|
+
},
|
200
|
+
{
|
201
|
+
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,
|
202
|
+
useFactory: (() => {
|
203
|
+
const builders = inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS);
|
204
|
+
return ((route) => Object.assign({}, ...builders.map((builder => builder(route)))));
|
205
|
+
}),
|
206
|
+
},
|
207
|
+
],
|
208
|
+
}]
|
209
|
+
}] });
|
210
|
+
|
104
211
|
/**
|
105
212
|
* Generated bundle index. Do not edit.
|
106
213
|
*/
|
107
214
|
|
108
|
-
export { DaffCategoryPageIdResolver, DaffCategoryPageResolver, DaffCategoryPageUrlResolver };
|
215
|
+
export { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS, DaffCategoryPageIdResolver, DaffCategoryPageResolver, DaffCategoryPageUrlResolver, DaffCategoryRoutingModule, daffProvideCategoryRoutingRequestBuilders };
|
109
216
|
//# sourceMappingURL=daffodil-category-routing.mjs.map
|