@daffodil/category 0.66.0 → 0.67.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/esm2022/driver/in-memory/backend/category.service.mjs +115 -0
- package/{esm2020 → esm2022}/driver/in-memory/drivers/category-driver.module.mjs +5 -5
- package/{esm2020 → esm2022}/driver/in-memory/drivers/category.service.mjs +5 -5
- package/{esm2020 → esm2022}/driver/magento/category-driver.module.mjs +5 -5
- package/{esm2020 → esm2022}/driver/magento/category.service.mjs +6 -6
- package/{esm2020 → esm2022}/driver/magento/testing/factories/category.factory.mjs +5 -5
- package/{esm2020 → esm2022}/driver/magento/transformers/applied-filter-transformer.service.mjs +5 -5
- package/{esm2020 → esm2022}/driver/magento/transformers/category-page-config-transformer.service.mjs +4 -4
- package/{esm2020 → esm2022}/driver/magento/transformers/category-response-transform.service.mjs +6 -6
- package/{esm2020 → esm2022}/driver/magento/transformers/category-transformer.service.mjs +4 -4
- package/{esm2020 → esm2022}/driver/testing/drivers/category-driver.module.mjs +5 -5
- package/{esm2020 → esm2022}/driver/testing/drivers/category.service.mjs +5 -5
- package/{esm2020 → esm2022}/routing/effects/collection-route.effects.mjs +5 -5
- package/esm2022/routing/module.mjs +73 -0
- package/esm2022/routing/resolvers/category-page/category-page.resolver.mjs +25 -0
- package/{esm2020 → esm2022}/routing/resolvers/category-page-id/category-page-id.resolver.mjs +6 -6
- package/{esm2020 → esm2022}/routing/resolvers/category-page-url/category-page-url.resolver.mjs +6 -6
- package/{esm2020 → esm2022}/routing/services/url-request-builder.service.mjs +6 -6
- package/{esm2020 → esm2022}/state/category-state.module.mjs +7 -7
- package/{esm2020 → esm2022}/state/effects/category-page-filter.effects.mjs +6 -6
- package/{esm2020 → esm2022}/state/effects/category-page.effects.mjs +6 -6
- package/{esm2020 → esm2022}/state/effects/category.effects.mjs +6 -6
- package/{esm2020 → esm2022}/state/facades/collection/facade.mjs +5 -5
- package/esm2022/state/facades/page/category.facade.mjs +52 -0
- package/{esm2020 → esm2022}/state/product-state.module.mjs +7 -7
- package/{esm2020 → esm2022}/state/testing/category-testing.module.mjs +8 -8
- package/{esm2020 → esm2022}/state/testing/mock-category-facade.mjs +4 -4
- package/{esm2020 → esm2022}/testing/factories/category-breadcrumb.factory.mjs +5 -5
- package/{esm2020 → esm2022}/testing/factories/category-page-metadata.factory.mjs +5 -5
- package/{esm2020 → esm2022}/testing/factories/category.factory.mjs +5 -5
- package/{fesm2020 → fesm2022}/daffodil-category-driver-in-memory.mjs +20 -20
- package/fesm2022/daffodil-category-driver-in-memory.mjs.map +1 -0
- package/{fesm2015 → fesm2022}/daffodil-category-driver-magento-testing.mjs +4 -4
- package/{fesm2020 → fesm2022}/daffodil-category-driver-magento-testing.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/daffodil-category-driver-magento.mjs +24 -24
- package/fesm2022/daffodil-category-driver-magento.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/daffodil-category-driver-testing.mjs +8 -8
- package/{fesm2020 → fesm2022}/daffodil-category-driver-testing.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/daffodil-category-routing.mjs +51 -51
- package/fesm2022/daffodil-category-routing.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/daffodil-category-state-testing.mjs +10 -10
- package/{fesm2020 → fesm2022}/daffodil-category-state-testing.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/daffodil-category-state.mjs +44 -44
- package/{fesm2020 → fesm2022}/daffodil-category-state.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/daffodil-category-testing.mjs +12 -12
- package/{fesm2020 → fesm2022}/daffodil-category-testing.mjs.map +1 -1
- package/models/category-request.d.ts +1 -1
- package/models/category.d.ts +1 -1
- package/package.json +1 -1
- package/routing/injection-tokens/request/builder.token.d.ts +1 -1
- package/routing/injection-tokens/request/builders.token.d.ts +1 -1
- package/routing/resolvers/category-page/category-page.resolver.d.ts +2 -2
- package/routing/resolvers/category-page-id/category-page-id.resolver.d.ts +2 -2
- package/routing/resolvers/category-page-url/category-page-url.resolver.d.ts +2 -2
- package/state/actions/category-page-filter.actions.d.ts +1 -1
- package/state/actions/category-page.actions.d.ts +1 -1
- package/state/actions/category.actions.d.ts +1 -1
- package/state/reducers/page-metadata/state.interface.d.ts +1 -1
- package/state/selectors/collection/selectors.d.ts +1 -1
- package/esm2020/driver/in-memory/backend/category.service.mjs +0 -115
- package/esm2020/routing/module.mjs +0 -73
- package/esm2020/routing/resolvers/category-page/category-page.resolver.mjs +0 -25
- package/esm2020/state/facades/page/category.facade.mjs +0 -52
- package/fesm2015/daffodil-category-driver-in-memory.mjs +0 -184
- package/fesm2015/daffodil-category-driver-in-memory.mjs.map +0 -1
- package/fesm2015/daffodil-category-driver-magento-testing.mjs.map +0 -1
- package/fesm2015/daffodil-category-driver-magento.mjs +0 -382
- package/fesm2015/daffodil-category-driver-magento.mjs.map +0 -1
- package/fesm2015/daffodil-category-driver-testing.mjs +0 -77
- package/fesm2015/daffodil-category-driver-testing.mjs.map +0 -1
- package/fesm2015/daffodil-category-routing.mjs +0 -239
- package/fesm2015/daffodil-category-routing.mjs.map +0 -1
- package/fesm2015/daffodil-category-state-testing.mjs +0 -72
- package/fesm2015/daffodil-category-state-testing.mjs.map +0 -1
- package/fesm2015/daffodil-category-state.mjs +0 -723
- package/fesm2015/daffodil-category-state.mjs.map +0 -1
- package/fesm2015/daffodil-category-testing.mjs +0 -116
- package/fesm2015/daffodil-category-testing.mjs.map +0 -1
- package/fesm2015/daffodil-category.mjs.map +0 -1
- package/fesm2020/daffodil-category-driver-in-memory.mjs.map +0 -1
- package/fesm2020/daffodil-category-driver-magento-testing.mjs +0 -43
- package/fesm2020/daffodil-category-driver-magento.mjs.map +0 -1
- package/fesm2020/daffodil-category-driver.mjs +0 -12
- package/fesm2020/daffodil-category-driver.mjs.map +0 -1
- package/fesm2020/daffodil-category-routing.mjs.map +0 -1
- package/fesm2020/daffodil-category.mjs +0 -17
- /package/{esm2020 → esm2022}/daffodil-category.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/daffodil-category-driver.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/in-memory/backend/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/in-memory/daffodil-category-driver-in-memory.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/in-memory/drivers/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/in-memory/index.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/in-memory/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/index.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/interfaces/category-service.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/config/default.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/daffodil-category-driver-magento.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/index.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/interfaces/config.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/interfaces/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/category.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/complete-category-response.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/get-category-and-products.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/requests/custom-metadata-attribute.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/requests/get-products-by-categories-request.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/url-resolver-response.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/models/url-resolver.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/queries/fragments/category-tree.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/queries/fragments/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/queries/get-category-and-products.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/queries/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/queries/resolve-url.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/testing/daffodil-category-driver-magento-testing.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/testing/factories/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/testing/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/transformers/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/transformers/pure/add-metadata-types-to-aggregates.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/magento/transformers/truncate-url.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/testing/daffodil-category-driver-testing.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/testing/drivers/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/driver/testing/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/models/category-breadcrumb.mjs +0 -0
- /package/{esm2020 → esm2022}/models/category-page-metadata.mjs +0 -0
- /package/{esm2020 → esm2022}/models/category-request.mjs +0 -0
- /package/{esm2020 → esm2022}/models/category.mjs +0 -0
- /package/{esm2020 → esm2022}/models/generic-category.mjs +0 -0
- /package/{esm2020 → esm2022}/models/get-category-response.mjs +0 -0
- /package/{esm2020 → esm2022}/models/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/daffodil-category-routing.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/injection-tokens/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/injection-tokens/request/builder.token.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/injection-tokens/request/builders.token.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/resolvers/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/routing/services/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/state/actions/category-page-filter.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/state/actions/category-page.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/state/actions/category.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/state/daffodil-category-state.mjs +0 -0
- /package/{esm2020 → esm2022}/state/facades/page/category-facade.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/state/facades/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/state/index.mjs +0 -0
- /package/{esm2020 → esm2022}/state/injection-tokens/error-matcher.token.mjs +0 -0
- /package/{esm2020 → esm2022}/state/injection-tokens/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/state/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category/category-reducer-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category/category.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category-entities/category-entities-adapter.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category-entities/category-entities.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category-reducers.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category-reducers.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/category-store-feature-key.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/page-metadata/reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/page-metadata/state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/product-reducers.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/product.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/token/extra.token.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/token/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/state/reducers/token/reducers.token.mjs +0 -0
- /package/{esm2020 → esm2022}/state/selectors/category-entities/category-entities.selector.mjs +0 -0
- /package/{esm2020 → esm2022}/state/selectors/category-feature.selector.mjs +0 -0
- /package/{esm2020 → esm2022}/state/selectors/category-page/category-page.selector.mjs +0 -0
- /package/{esm2020 → esm2022}/state/selectors/category.selector.mjs +0 -0
- /package/{esm2020 → esm2022}/state/selectors/collection/selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/state/testing/daffodil-category-state-testing.mjs +0 -0
- /package/{esm2020 → esm2022}/state/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/state/testing/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/daffodil-category-testing.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/factories/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/helpers/category-helper.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/public_api.mjs +0 -0
- /package/{fesm2015 → fesm2022}/daffodil-category-driver.mjs +0 -0
- /package/{fesm2015 → fesm2022}/daffodil-category-driver.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/daffodil-category.mjs +0 -0
- /package/{fesm2020 → fesm2022}/daffodil-category.mjs.map +0 -0
@@ -20,15 +20,15 @@ class DaffCategoryBreadcrumbFactory extends DaffModelFactory {
|
|
20
20
|
constructor() {
|
21
21
|
super(MockCategoryBreadcrumb);
|
22
22
|
}
|
23
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryBreadcrumbFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
24
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryBreadcrumbFactory, providedIn: 'root' }); }
|
23
25
|
}
|
24
|
-
|
25
|
-
/** @nocollapse */ DaffCategoryBreadcrumbFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryBreadcrumbFactory, providedIn: 'root' });
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryBreadcrumbFactory, decorators: [{
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryBreadcrumbFactory, decorators: [{
|
27
27
|
type: Injectable,
|
28
28
|
args: [{
|
29
29
|
providedIn: 'root',
|
30
30
|
}]
|
31
|
-
}], ctorParameters:
|
31
|
+
}], ctorParameters: () => [] });
|
32
32
|
|
33
33
|
class MockCategory {
|
34
34
|
constructor(breadcrumbFactory) {
|
@@ -77,15 +77,15 @@ class DaffCategoryFactory extends DaffModelFactory {
|
|
77
77
|
...partial,
|
78
78
|
});
|
79
79
|
}
|
80
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryFactory, deps: [{ token: DaffCategoryBreadcrumbFactory }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
81
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryFactory, providedIn: 'root' }); }
|
80
82
|
}
|
81
|
-
|
82
|
-
/** @nocollapse */ DaffCategoryFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryFactory, providedIn: 'root' });
|
83
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryFactory, decorators: [{
|
83
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryFactory, decorators: [{
|
84
84
|
type: Injectable,
|
85
85
|
args: [{
|
86
86
|
providedIn: 'root',
|
87
87
|
}]
|
88
|
-
}], ctorParameters:
|
88
|
+
}], ctorParameters: () => [{ type: DaffCategoryBreadcrumbFactory }] });
|
89
89
|
|
90
90
|
/**
|
91
91
|
* A helper function to verify that a model is a Category.
|
@@ -110,15 +110,15 @@ class DaffCategoryPageMetadataFactory extends DaffModelFactory {
|
|
110
110
|
constructor(pageInfoFactory, sortFieldsFactory, filterFactory) {
|
111
111
|
super(MockCategoryPageMetadata, pageInfoFactory, sortFieldsFactory, filterFactory);
|
112
112
|
}
|
113
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryPageMetadataFactory, deps: [{ token: i1.DaffNumericallyPaginableFactory }, { token: i1.DaffSortableFactory }, { token: i1.DaffFilterFactory }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
114
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryPageMetadataFactory, providedIn: 'root' }); }
|
113
115
|
}
|
114
|
-
|
115
|
-
/** @nocollapse */ DaffCategoryPageMetadataFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryPageMetadataFactory, providedIn: 'root' });
|
116
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryPageMetadataFactory, decorators: [{
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: DaffCategoryPageMetadataFactory, decorators: [{
|
117
117
|
type: Injectable,
|
118
118
|
args: [{
|
119
119
|
providedIn: 'root',
|
120
120
|
}]
|
121
|
-
}], ctorParameters:
|
121
|
+
}], ctorParameters: () => [{ type: i1.DaffNumericallyPaginableFactory }, { type: i1.DaffSortableFactory }, { type: i1.DaffFilterFactory }] });
|
122
122
|
|
123
123
|
/**
|
124
124
|
* Generated bundle index. Do not edit.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-category-testing.mjs","sources":["../../../libs/category/testing/src/factories/category-breadcrumb.factory.ts","../../../libs/category/testing/src/factories/category.factory.ts","../../../libs/category/testing/src/helpers/category-helper.ts","../../../libs/category/testing/src/factories/category-page-metadata.factory.ts","../../../libs/category/testing/src/daffodil-category-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffCategoryBreadcrumb } from '@daffodil/category';\nimport { DaffModelFactory } from '@daffodil/core/testing';\n\nexport class MockCategoryBreadcrumb implements DaffCategoryBreadcrumb {\n id = faker.datatype.uuid();\n name = faker.commerce.productMaterial();\n level = faker.datatype.number({ min: 1, max: 5 });\n url = faker.commerce.productMaterial();\n}\n\n/**\n * A factory for creating a {@link DaffCategoryBreadcrumb}.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryBreadcrumbFactory extends DaffModelFactory<DaffCategoryBreadcrumb, typeof MockCategoryBreadcrumb>{\n constructor() {\n super(MockCategoryBreadcrumb);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffCategory } from '@daffodil/category';\nimport { randomSubset } from '@daffodil/core';\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport { DaffProduct } from '@daffodil/product';\n\nimport { DaffCategoryBreadcrumbFactory } from './category-breadcrumb.factory';\n\nexport class MockCategory implements DaffCategory {\n id = faker.datatype.uuid();\n url = `/${faker.helpers.unique(faker.internet.domainWord)}.html`;\n canonicalUrl = faker.internet.url();\n name = faker.commerce.department();\n description = faker.commerce.productDescription();\n meta_title = faker.commerce.department();\n meta_description = faker.commerce.productDescription();\n breadcrumbs = this.breadcrumbFactory.createMany(faker.datatype.number({ min: 1, max: 5 }));\n children_count = faker.datatype.number({ min: 1, max: 10 });\n total_products = faker.datatype.number({ min: 0, max: 9999 });\n product_ids = [faker.datatype.number({ min: 1, max: 100 }).toString()];\n\n constructor(\n protected breadcrumbFactory: DaffCategoryBreadcrumbFactory,\n ) {}\n}\n\n/**\n * A factory for creating a {@link DaffCategory}.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryFactory extends DaffModelFactory<DaffCategory, typeof MockCategory>{\n constructor(\n breadcrumbFactory: DaffCategoryBreadcrumbFactory,\n ) {\n super(MockCategory, breadcrumbFactory);\n }\n\n /**\n * Creates a category tree of specified depth, optionally using the passed product IDs.\n * This is very useful for creating a category tree that closely resembles those found in the wild.\n * Each child has a minimum of half of the parent's products.\n */\n createTree(depth: number, productIds: DaffProduct['id'][] = [], partial: Partial<DaffCategory> = {}): DaffCategory {\n if (depth > 0) {\n const childrenCount = faker.datatype.number({ min: 1, max: depth * 2 });\n\n return this.create({\n children: Array(childrenCount).fill(0).map(() =>\n this.createTree(\n depth - 1,\n randomSubset(productIds, faker.datatype.number({ min: Math.floor(productIds.length / 2), max: productIds.length })),\n ),\n ),\n children_count: childrenCount,\n product_ids: productIds,\n total_products: productIds.length,\n ...partial,\n });\n }\n\n return this.create({\n children: [],\n children_count: 0,\n product_ids: productIds,\n total_products: productIds.length,\n ...partial,\n });\n }\n}\n","import { DaffCategory } from '@daffodil/category';\n\n/**\n * A helper function to verify that a model is a Category.\n *\n * @param category\n */\nexport function isCategory(category: DaffCategory): boolean {\n return !!category.id\n && !!category.name;\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffCategoryPageMetadata } from '@daffodil/category';\nimport {\n DaffModelFactory,\n DaffNumericallyPaginableFactory,\n DaffSortableFactory,\n} from '@daffodil/core/testing';\nimport {\n DaffFilterFactory,\n MockCollectionMetadata,\n} from '@daffodil/core/testing';\n\nexport class MockCategoryPageMetadata extends MockCollectionMetadata implements DaffCategoryPageMetadata {\n id = faker.datatype.uuid();\n}\n\n/**\n * A factory for creating {@link DaffCategoryPageMetadata}.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryPageMetadataFactory extends DaffModelFactory<DaffCategoryPageMetadata>{\n constructor(\n pageInfoFactory: DaffNumericallyPaginableFactory,\n sortFieldsFactory: DaffSortableFactory,\n filterFactory: DaffFilterFactory,\n ) {\n super(MockCategoryPageMetadata, pageInfoFactory, sortFieldsFactory, filterFactory);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffCategoryBreadcrumbFactory"],"mappings":";;;;;;;MAMa,sBAAsB,CAAA;AAAnC,IAAA,WAAA,GAAA;AACE,QAAA,IAAA,CAAA,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;AACxC,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAClD,QAAA,IAAA,CAAA,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;KACxC;AAAA,CAAA;AAED;;AAEG;AAIG,MAAO,6BAA8B,SAAQ,gBAAuE,CAAA;AACxH,IAAA,WAAA,GAAA;QACE,KAAK,CAAC,sBAAsB,CAAC,CAAC;KAC/B
|
1
|
+
{"version":3,"file":"daffodil-category-testing.mjs","sources":["../../../libs/category/testing/src/factories/category-breadcrumb.factory.ts","../../../libs/category/testing/src/factories/category.factory.ts","../../../libs/category/testing/src/helpers/category-helper.ts","../../../libs/category/testing/src/factories/category-page-metadata.factory.ts","../../../libs/category/testing/src/daffodil-category-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffCategoryBreadcrumb } from '@daffodil/category';\nimport { DaffModelFactory } from '@daffodil/core/testing';\n\nexport class MockCategoryBreadcrumb implements DaffCategoryBreadcrumb {\n id = faker.datatype.uuid();\n name = faker.commerce.productMaterial();\n level = faker.datatype.number({ min: 1, max: 5 });\n url = faker.commerce.productMaterial();\n}\n\n/**\n * A factory for creating a {@link DaffCategoryBreadcrumb}.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryBreadcrumbFactory extends DaffModelFactory<DaffCategoryBreadcrumb, typeof MockCategoryBreadcrumb>{\n constructor() {\n super(MockCategoryBreadcrumb);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffCategory } from '@daffodil/category';\nimport { randomSubset } from '@daffodil/core';\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport { DaffProduct } from '@daffodil/product';\n\nimport { DaffCategoryBreadcrumbFactory } from './category-breadcrumb.factory';\n\nexport class MockCategory implements DaffCategory {\n id = faker.datatype.uuid();\n url = `/${faker.helpers.unique(faker.internet.domainWord)}.html`;\n canonicalUrl = faker.internet.url();\n name = faker.commerce.department();\n description = faker.commerce.productDescription();\n meta_title = faker.commerce.department();\n meta_description = faker.commerce.productDescription();\n breadcrumbs = this.breadcrumbFactory.createMany(faker.datatype.number({ min: 1, max: 5 }));\n children_count = faker.datatype.number({ min: 1, max: 10 });\n total_products = faker.datatype.number({ min: 0, max: 9999 });\n product_ids = [faker.datatype.number({ min: 1, max: 100 }).toString()];\n\n constructor(\n protected breadcrumbFactory: DaffCategoryBreadcrumbFactory,\n ) {}\n}\n\n/**\n * A factory for creating a {@link DaffCategory}.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryFactory extends DaffModelFactory<DaffCategory, typeof MockCategory>{\n constructor(\n breadcrumbFactory: DaffCategoryBreadcrumbFactory,\n ) {\n super(MockCategory, breadcrumbFactory);\n }\n\n /**\n * Creates a category tree of specified depth, optionally using the passed product IDs.\n * This is very useful for creating a category tree that closely resembles those found in the wild.\n * Each child has a minimum of half of the parent's products.\n */\n createTree(depth: number, productIds: DaffProduct['id'][] = [], partial: Partial<DaffCategory> = {}): DaffCategory {\n if (depth > 0) {\n const childrenCount = faker.datatype.number({ min: 1, max: depth * 2 });\n\n return this.create({\n children: Array(childrenCount).fill(0).map(() =>\n this.createTree(\n depth - 1,\n randomSubset(productIds, faker.datatype.number({ min: Math.floor(productIds.length / 2), max: productIds.length })),\n ),\n ),\n children_count: childrenCount,\n product_ids: productIds,\n total_products: productIds.length,\n ...partial,\n });\n }\n\n return this.create({\n children: [],\n children_count: 0,\n product_ids: productIds,\n total_products: productIds.length,\n ...partial,\n });\n }\n}\n","import { DaffCategory } from '@daffodil/category';\n\n/**\n * A helper function to verify that a model is a Category.\n *\n * @param category\n */\nexport function isCategory(category: DaffCategory): boolean {\n return !!category.id\n && !!category.name;\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffCategoryPageMetadata } from '@daffodil/category';\nimport {\n DaffModelFactory,\n DaffNumericallyPaginableFactory,\n DaffSortableFactory,\n} from '@daffodil/core/testing';\nimport {\n DaffFilterFactory,\n MockCollectionMetadata,\n} from '@daffodil/core/testing';\n\nexport class MockCategoryPageMetadata extends MockCollectionMetadata implements DaffCategoryPageMetadata {\n id = faker.datatype.uuid();\n}\n\n/**\n * A factory for creating {@link DaffCategoryPageMetadata}.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffCategoryPageMetadataFactory extends DaffModelFactory<DaffCategoryPageMetadata>{\n constructor(\n pageInfoFactory: DaffNumericallyPaginableFactory,\n sortFieldsFactory: DaffSortableFactory,\n filterFactory: DaffFilterFactory,\n ) {\n super(MockCategoryPageMetadata, pageInfoFactory, sortFieldsFactory, filterFactory);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffCategoryBreadcrumbFactory"],"mappings":"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"}
|
@@ -11,7 +11,7 @@ export declare enum DaffCategoryRequestKind {
|
|
11
11
|
/**
|
12
12
|
* The request used to retrieve a category and its relevant items.
|
13
13
|
*/
|
14
|
-
export
|
14
|
+
export type DaffCategoryRequest = DaffCategoryIdRequest | DaffCategoryUrlRequest;
|
15
15
|
/**
|
16
16
|
* A request used to retrieve a category by its uid.
|
17
17
|
*/
|
package/models/category.d.ts
CHANGED
@@ -3,4 +3,4 @@ import { DaffGenericCategory } from './generic-category';
|
|
3
3
|
* This is the standard model of a Category of products.
|
4
4
|
* See {@link DaffGenericCategory}
|
5
5
|
*/
|
6
|
-
export
|
6
|
+
export type DaffCategory = DaffGenericCategory<DaffCategory>;
|
package/package.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"@daffodil/category","nx":{"targets":{"build":{"outputs":["{workspaceRoot}/dist/category"]}}},"version":"0.
|
1
|
+
{"name":"@daffodil/category","nx":{"targets":{"build":{"outputs":["{workspaceRoot}/dist/category"]}}},"version":"0.67.0","description":"An ecommerce categories package that has multi-platform support and state management features.","repository":{"type":"git","url":"https://github.com/graycoreio/daffodil"},"author":"Graycore LLC","license":"MIT","bugs":{"url":"https://github.com/graycoreio/daffodil/issues"},"publishConfig":{"directory":"../../dist/category"},"homepage":"https://github.com/graycoreio/daffodil","peerDependencies":{"@angular/common":"^17.0.0","@angular/core":"^17.0.0","@daffodil/core":"0.67.0","@daffodil/product":"0.67.0","@ngrx/effects":"^17.0.0","@ngrx/entity":"^17.0.0","@ngrx/store":"^17.0.0","rxjs":"7.8.1"},"optionalDependencies":{"@apollo/client":"^3.0.0","@daffodil/driver":"0.67.0","angular-in-memory-web-api":"^0.17.0","apollo-angular":"^6.0.0","@faker-js/faker":"^7.6.0"},"module":"fesm2022/daffodil-category.mjs","typings":"index.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2022":"./esm2022/daffodil-category.mjs","esm":"./esm2022/daffodil-category.mjs","default":"./fesm2022/daffodil-category.mjs"},"./driver":{"types":"./driver/index.d.ts","esm2022":"./esm2022/driver/daffodil-category-driver.mjs","esm":"./esm2022/driver/daffodil-category-driver.mjs","default":"./fesm2022/daffodil-category-driver.mjs"},"./routing":{"types":"./routing/index.d.ts","esm2022":"./esm2022/routing/daffodil-category-routing.mjs","esm":"./esm2022/routing/daffodil-category-routing.mjs","default":"./fesm2022/daffodil-category-routing.mjs"},"./state":{"types":"./state/index.d.ts","esm2022":"./esm2022/state/daffodil-category-state.mjs","esm":"./esm2022/state/daffodil-category-state.mjs","default":"./fesm2022/daffodil-category-state.mjs"},"./testing":{"types":"./testing/index.d.ts","esm2022":"./esm2022/testing/daffodil-category-testing.mjs","esm":"./esm2022/testing/daffodil-category-testing.mjs","default":"./fesm2022/daffodil-category-testing.mjs"},"./driver/in-memory":{"types":"./driver/in-memory/index.d.ts","esm2022":"./esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs","esm":"./esm2022/driver/in-memory/daffodil-category-driver-in-memory.mjs","default":"./fesm2022/daffodil-category-driver-in-memory.mjs"},"./driver/magento":{"types":"./driver/magento/index.d.ts","esm2022":"./esm2022/driver/magento/daffodil-category-driver-magento.mjs","esm":"./esm2022/driver/magento/daffodil-category-driver-magento.mjs","default":"./fesm2022/daffodil-category-driver-magento.mjs"},"./driver/testing":{"types":"./driver/testing/index.d.ts","esm2022":"./esm2022/driver/testing/daffodil-category-driver-testing.mjs","esm":"./esm2022/driver/testing/daffodil-category-driver-testing.mjs","default":"./fesm2022/daffodil-category-driver-testing.mjs"},"./state/testing":{"types":"./state/testing/index.d.ts","esm2022":"./esm2022/state/testing/daffodil-category-state-testing.mjs","esm":"./esm2022/state/testing/daffodil-category-state-testing.mjs","default":"./fesm2022/daffodil-category-state-testing.mjs"},"./driver/magento/testing":{"types":"./driver/magento/testing/index.d.ts","esm2022":"./esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs","esm":"./esm2022/driver/magento/testing/daffodil-category-driver-magento-testing.mjs","default":"./fesm2022/daffodil-category-driver-magento-testing.mjs"}},"sideEffects":false,"dependencies":{"tslib":"^2.3.0"}}
|
@@ -3,4 +3,4 @@ import { DaffCategoryRoutingRequestBuilder } from './builders.token';
|
|
3
3
|
/**
|
4
4
|
* An internal token to combine the {@link DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS} into a single builder.
|
5
5
|
*/
|
6
|
-
export declare const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER: InjectionToken<DaffCategoryRoutingRequestBuilder
|
6
|
+
export declare const DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER: InjectionToken<DaffCategoryRoutingRequestBuilder>;
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { InjectionToken, ValueProvider } from '@angular/core';
|
2
2
|
import { ActivatedRouteSnapshot } from '@angular/router';
|
3
3
|
import { DaffCollectionRequest } from '@daffodil/core';
|
4
|
-
export
|
4
|
+
export type DaffCategoryRoutingRequestBuilder<T extends DaffCollectionRequest = DaffCollectionRequest> = (route: ActivatedRouteSnapshot) => T;
|
5
5
|
/**
|
6
6
|
* A multi-provider injection token for category request builders.
|
7
7
|
* These builders are called with the requested route during the resolve step
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ActivatedRouteSnapshot
|
1
|
+
import { ActivatedRouteSnapshot } from '@angular/router';
|
2
2
|
import { Observable } from 'rxjs';
|
3
3
|
import { DaffCategoryPageIdResolver } from '../category-page-id/category-page-id.resolver';
|
4
4
|
import * as i0 from "@angular/core";
|
@@ -9,7 +9,7 @@ import * as i0 from "@angular/core";
|
|
9
9
|
* @deprecated
|
10
10
|
* @see DaffCategoryPageIdResolver
|
11
11
|
*/
|
12
|
-
export declare class DaffCategoryPageResolver
|
12
|
+
export declare class DaffCategoryPageResolver {
|
13
13
|
private categoryPageIdResolver;
|
14
14
|
constructor(categoryPageIdResolver: DaffCategoryPageIdResolver);
|
15
15
|
resolve(route: ActivatedRouteSnapshot): Observable<boolean>;
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ActivatedRouteSnapshot
|
1
|
+
import { ActivatedRouteSnapshot } from '@angular/router';
|
2
2
|
import { ActionsSubject, Store } from '@ngrx/store';
|
3
3
|
import { Observable } from 'rxjs';
|
4
4
|
import { DaffCategoryReducersState } from '@daffodil/category/state';
|
@@ -8,7 +8,7 @@ import * as i0 from "@angular/core";
|
|
8
8
|
* Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url
|
9
9
|
* of the form `some/url/{id}` where `{id}` is the category id.
|
10
10
|
*/
|
11
|
-
export declare class DaffCategoryPageIdResolver
|
11
|
+
export declare class DaffCategoryPageIdResolver {
|
12
12
|
private platformId;
|
13
13
|
private requestBuilder;
|
14
14
|
private store;
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ActivatedRouteSnapshot,
|
1
|
+
import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
|
2
2
|
import { ActionsSubject, Store } from '@ngrx/store';
|
3
3
|
import { Observable } from 'rxjs';
|
4
4
|
import { DaffCategoryReducersState } from '@daffodil/category/state';
|
@@ -10,7 +10,7 @@ import * as i0 from "@angular/core";
|
|
10
10
|
* a url of the form `some/url.html(secondary:outlet)?query=param#fragment` and attempt to resolve a product from it.
|
11
11
|
* Assumes that the URL to be resolved is the primary outlet.
|
12
12
|
*/
|
13
|
-
export declare class DaffCategoryPageUrlResolver
|
13
|
+
export declare class DaffCategoryPageUrlResolver {
|
14
14
|
private platformId;
|
15
15
|
private store;
|
16
16
|
private dispatcher;
|
@@ -109,4 +109,4 @@ export declare class DaffCategoryPageChangeSortingOption implements Action {
|
|
109
109
|
direction: DaffCategoryRequest['appliedSortDirection'];
|
110
110
|
});
|
111
111
|
}
|
112
|
-
export
|
112
|
+
export type DaffCategoryPageProductCollectionActions = DaffCategoryPageChangeFilters | DaffCategoryPageReplaceFilters | DaffCategoryPageApplyFilters | DaffCategoryPageRemoveFilters | DaffCategoryPageClearFilters | DaffCategoryPageToggleFilter | DaffCategoryPageChangePageSize | DaffCategoryPageChangeCurrentPage | DaffCategoryPageChangeSortingOption;
|
@@ -55,4 +55,4 @@ export declare class DaffCategoryPageLoadFailure implements Action {
|
|
55
55
|
readonly type = DaffCategoryPageActionTypes.CategoryPageLoadFailureAction;
|
56
56
|
constructor(errorMessage: DaffStateError);
|
57
57
|
}
|
58
|
-
export
|
58
|
+
export type DaffCategoryPageActions<U extends DaffGenericCategory<U> = DaffCategory, W extends DaffProduct = DaffProduct> = DaffCategoryPageLoad | DaffCategoryPageLoadByUrl | DaffCategoryPageLoadSuccess<U, W> | DaffCategoryPageLoadFailure;
|
@@ -40,4 +40,4 @@ export declare class DaffCategoryLoadFailure implements Action {
|
|
40
40
|
readonly type = DaffCategoryActionTypes.CategoryLoadFailureAction;
|
41
41
|
constructor(errorMessage: DaffStateError);
|
42
42
|
}
|
43
|
-
export
|
43
|
+
export type DaffCategoryActions<U extends DaffGenericCategory<U> = DaffCategory, W extends DaffProduct = DaffProduct> = DaffCategoryLoad | DaffCategoryLoadSuccess<U, W> | DaffCategoryLoadFailure;
|
@@ -1,2 +1,2 @@
|
|
1
1
|
import { DaffCategoryPageMetadata } from '@daffodil/category';
|
2
|
-
export
|
2
|
+
export type DaffCategoryPageMetadataReducerState = DaffCategoryPageMetadata;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { DaffCategoryPageMetadata } from '@daffodil/category';
|
2
2
|
import { DaffCollectionMemoizedSelectors } from '@daffodil/core/state';
|
3
3
|
import { DaffCategoryStateRootSlice } from '../../reducers/public_api';
|
4
|
-
export
|
4
|
+
export type DaffCategoryPageProductCollectionSelectors = DaffCollectionMemoizedSelectors<DaffCategoryStateRootSlice, DaffCategoryPageMetadata>;
|
5
5
|
export declare const getCategoryProductCollectionSelectors: () => DaffCategoryPageProductCollectionSelectors;
|
@@ -1,115 +0,0 @@
|
|
1
|
-
import { Injectable } from '@angular/core';
|
2
|
-
import { STATUS, } from 'angular-in-memory-web-api';
|
3
|
-
import { DaffCategoryFactory, DaffCategoryPageMetadataFactory, } from '@daffodil/category/testing';
|
4
|
-
import { collect } from '@daffodil/core';
|
5
|
-
import { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';
|
6
|
-
import { DaffInMemoryBackendProductService } from '@daffodil/product/driver/in-memory';
|
7
|
-
import * as i0 from "@angular/core";
|
8
|
-
import * as i1 from "@daffodil/category/testing";
|
9
|
-
import * as i2 from "@daffodil/product/driver/in-memory";
|
10
|
-
/**
|
11
|
-
* An in-memory service that mocks out the backend services for getting categories. See the angular in memory documentation for more details.
|
12
|
-
*/
|
13
|
-
export class DaffInMemoryBackendCategoryService {
|
14
|
-
constructor(categoryFactory, metadataFactory, productInMemoryBackendService) {
|
15
|
-
this.categoryFactory = categoryFactory;
|
16
|
-
this.metadataFactory = metadataFactory;
|
17
|
-
this.productInMemoryBackendService = productInMemoryBackendService;
|
18
|
-
this._categories = [];
|
19
|
-
this._root = this.categoryFactory.createTree(3, this.productInMemoryBackendService.products.map(({ id }) => id));
|
20
|
-
this._categories = collect(this._root, (category) => category?.children || []);
|
21
|
-
}
|
22
|
-
get rootCategory() {
|
23
|
-
return this._root;
|
24
|
-
}
|
25
|
-
/**
|
26
|
-
* The collection of categories in the backend.
|
27
|
-
*/
|
28
|
-
get categories() {
|
29
|
-
return this._categories;
|
30
|
-
}
|
31
|
-
/**
|
32
|
-
* The metadata associated with the current page.
|
33
|
-
*/
|
34
|
-
get categoryPageMetadata() {
|
35
|
-
return this._categoryPageMetadata;
|
36
|
-
}
|
37
|
-
/**
|
38
|
-
* @docs-private
|
39
|
-
*/
|
40
|
-
parseRequestUrl(url, utils) {
|
41
|
-
return utils.parseRequestUrl(url);
|
42
|
-
}
|
43
|
-
/**
|
44
|
-
* @docs-private
|
45
|
-
*/
|
46
|
-
createDb() {
|
47
|
-
return {
|
48
|
-
categories: this.categories,
|
49
|
-
};
|
50
|
-
}
|
51
|
-
/**
|
52
|
-
* Get a category.
|
53
|
-
*
|
54
|
-
* @param reqInfo
|
55
|
-
*/
|
56
|
-
get(reqInfo) {
|
57
|
-
// this method is overloaded for both get by ID and URL so we check both
|
58
|
-
const category = this.categories.filter(({ id, url }) => id === reqInfo.id || daffUriTruncateLeadingSlash(url) === reqInfo.id)[0];
|
59
|
-
if (category) {
|
60
|
-
this._categoryPageMetadata = this.metadataFactory.create({
|
61
|
-
id: reqInfo.id,
|
62
|
-
pageSize: this.generatePageSize(reqInfo),
|
63
|
-
currentPage: this.getCurrentPageParam(reqInfo),
|
64
|
-
totalPages: this.getTotalPages(category.product_ids, this.generatePageSize(reqInfo)),
|
65
|
-
ids: this.trimProductIdsToSinglePage(category.product_ids, this.getCurrentPageParam(reqInfo), this.generatePageSize(reqInfo)),
|
66
|
-
count: category.total_products,
|
67
|
-
});
|
68
|
-
return reqInfo.utils.createResponse$(() => ({
|
69
|
-
body: {
|
70
|
-
category,
|
71
|
-
categoryPageMetadata: this._categoryPageMetadata,
|
72
|
-
products: this.productInMemoryBackendService.products,
|
73
|
-
},
|
74
|
-
status: STATUS.OK,
|
75
|
-
}));
|
76
|
-
}
|
77
|
-
else {
|
78
|
-
this._categoryPageMetadata = null;
|
79
|
-
return reqInfo.utils.createResponse$(() => ({
|
80
|
-
body: {},
|
81
|
-
status: STATUS.NOT_FOUND,
|
82
|
-
}));
|
83
|
-
}
|
84
|
-
}
|
85
|
-
getTotalPages(allIds, pageSize) {
|
86
|
-
return Math.ceil(allIds.length / pageSize);
|
87
|
-
}
|
88
|
-
trimProductIdsToSinglePage(allIds, currentPage, pageSize) {
|
89
|
-
const tempIds = [...allIds];
|
90
|
-
tempIds.splice(0, (currentPage - 1) * pageSize);
|
91
|
-
tempIds.splice(pageSize, tempIds.length - pageSize);
|
92
|
-
return tempIds;
|
93
|
-
}
|
94
|
-
generatePageSize(reqInfo) {
|
95
|
-
if (reqInfo.req.params.map && reqInfo.req.params.map.get('pageSize') && reqInfo.req.params.map.get('pageSize')[0]) {
|
96
|
-
return parseInt(reqInfo.req.params.map.get('pageSize')[0], 10);
|
97
|
-
}
|
98
|
-
return 10;
|
99
|
-
}
|
100
|
-
getCurrentPageParam(reqInfo) {
|
101
|
-
if (reqInfo.req.params.map && reqInfo.req.params.map.get('currentPage') && reqInfo.req.params.map.get('currentPage')[0]) {
|
102
|
-
return parseInt(reqInfo.req.params.map.get('currentPage')[0], 10);
|
103
|
-
}
|
104
|
-
return 1;
|
105
|
-
}
|
106
|
-
}
|
107
|
-
/** @nocollapse */ DaffInMemoryBackendCategoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffInMemoryBackendCategoryService, deps: [{ token: i1.DaffCategoryFactory }, { token: i1.DaffCategoryPageMetadataFactory }, { token: i2.DaffInMemoryBackendProductService }], target: i0.ɵɵFactoryTarget.Injectable });
|
108
|
-
/** @nocollapse */ DaffInMemoryBackendCategoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffInMemoryBackendCategoryService, providedIn: 'root' });
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffInMemoryBackendCategoryService, decorators: [{
|
110
|
-
type: Injectable,
|
111
|
-
args: [{
|
112
|
-
providedIn: 'root',
|
113
|
-
}]
|
114
|
-
}], ctorParameters: function () { return [{ type: i1.DaffCategoryFactory }, { type: i1.DaffCategoryPageMetadataFactory }, { type: i2.DaffInMemoryBackendProductService }]; } });
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvZHJpdmVyL2luLW1lbW9yeS9zcmMvYmFja2VuZC9jYXRlZ29yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUlMLE1BQU0sR0FDUCxNQUFNLDJCQUEyQixDQUFDO0FBTW5DLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsK0JBQStCLEdBQ2hDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXJFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7O0FBRXZGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtDQUFrQztJQXVCN0MsWUFDVSxlQUFvQyxFQUNwQyxlQUFnRCxFQUNoRCw2QkFBZ0U7UUFGaEUsb0JBQWUsR0FBZixlQUFlLENBQXFCO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQztRQUNoRCxrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQW1DO1FBeEJoRSxnQkFBVyxHQUFtQixFQUFFLENBQUM7UUEwQnpDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQzFDLENBQUMsRUFDRCxJQUFJLENBQUMsNkJBQTZCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUNoRSxDQUFDO1FBQ0YsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQ3hCLElBQUksQ0FBQyxLQUFLLEVBQ1YsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEs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c0pBQWxDLGtDQUFrQyxjQUZqQyxNQUFNOzJGQUVQLGtDQUFrQztrQkFIOUMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmYWtlciB9IGZyb20gJ0BmYWtlci1qcy9mYWtlcic7XG5pbXBvcnQge1xuICBJbk1lbW9yeURiU2VydmljZSxcbiAgUmVxdWVzdEluZm9VdGlsaXRpZXMsXG4gIFBhcnNlZFJlcXVlc3RVcmwsXG4gIFNUQVRVUyxcbn0gZnJvbSAnYW5ndWxhci1pbi1tZW1vcnktd2ViLWFwaSc7XG5cbmltcG9ydCB7XG4gIERhZmZDYXRlZ29yeSxcbiAgRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhLFxufSBmcm9tICdAZGFmZm9kaWwvY2F0ZWdvcnknO1xuaW1wb3J0IHtcbiAgRGFmZkNhdGVnb3J5RmFjdG9yeSxcbiAgRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhRmFjdG9yeSxcbn0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5L3Rlc3RpbmcnO1xuaW1wb3J0IHsgY29sbGVjdCB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcbmltcG9ydCB7IGRhZmZVcmlUcnVuY2F0ZUxlYWRpbmdTbGFzaCB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3JvdXRpbmcnO1xuaW1wb3J0IHsgRGFmZlByb2R1Y3QgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdCc7XG5pbXBvcnQgeyBEYWZmSW5NZW1vcnlCYWNrZW5kUHJvZHVjdFNlcnZpY2UgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9kcml2ZXIvaW4tbWVtb3J5JztcblxuLyoqXG4gKiBBbiBpbi1tZW1vcnkgc2VydmljZSB0aGF0IG1vY2tzIG91dCB0aGUgYmFja2VuZCBzZXJ2aWNlcyBmb3IgZ2V0dGluZyBjYXRlZ29yaWVzLiBTZWUgdGhlIGFuZ3VsYXIgaW4gbWVtb3J5IGRvY3VtZW50YXRpb24gZm9yIG1vcmUgZGV0YWlscy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZJbk1lbW9yeUJhY2tlbmRDYXRlZ29yeVNlcnZpY2UgaW1wbGVtZW50cyBJbk1lbW9yeURiU2VydmljZSB7XG4gIHByb3RlY3RlZCBfcm9vdDogRGFmZkNhdGVnb3J5O1xuICBwcm90ZWN0ZWQgX2NhdGVnb3JpZXM6IERhZmZDYXRlZ29yeVtdID0gW107XG4gIHByb3RlY3RlZCBfY2F0ZWdvcnlQYWdlTWV0YWRhdGE6IERhZmZDYXRlZ29yeVBhZ2VNZXRhZGF0YTtcblxuICBnZXQgcm9vdENhdGVnb3J5KCk6IERhZmZDYXRlZ29yeSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvb3Q7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGNvbGxlY3Rpb24gb2YgY2F0ZWdvcmllcyBpbiB0aGUgYmFja2VuZC5cbiAgICovXG4gIGdldCBjYXRlZ29yaWVzKCk6IERhZmZDYXRlZ29yeVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY2F0ZWdvcmllcztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbWV0YWRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IHBhZ2UuXG4gICAqL1xuICBnZXQgY2F0ZWdvcnlQYWdlTWV0YWRhdGEoKTogRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fY2F0ZWdvcnlQYWdlTWV0YWRhdGE7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhdGVnb3J5RmFjdG9yeTogRGFmZkNhdGVnb3J5RmFjdG9yeSxcbiAgICBwcml2YXRlIG1ldGFkYXRhRmFjdG9yeTogRGFmZkNhdGVnb3J5UGFnZU1ldGFkYXRhRmFjdG9yeSxcbiAgICBwcml2YXRlIHByb2R1Y3RJbk1lbW9yeUJhY2tlbmRTZXJ2aWNlOiBEYWZmSW5NZW1vcnlCYWNrZW5kUHJvZHVjdFNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuX3Jvb3QgPSB0aGlzLmNhdGVnb3J5RmFjdG9yeS5jcmVhdGVUcmVlKFxuICAgICAgMyxcbiAgICAgIHRoaXMucHJvZHVjdEluTWVtb3J5QmFja2VuZFNlcnZpY2UucHJvZHVjdHMubWFwKCh7IGlkIH0pID0+IGlkKSxcbiAgICApO1xuICAgIHRoaXMuX2NhdGVnb3JpZXMgPSBjb2xsZWN0KFxuICAgICAgdGhpcy5fcm9vdCxcbiAgICAgIChjYXRlZ29yeSkgPT4gY2F0ZWdvcnk/LmNoaWxkcmVuIHx8IFtdLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQGRvY3MtcHJpdmF0ZVxuICAgKi9cbiAgcGFyc2VSZXF1ZXN0VXJsKHVybDogc3RyaW5nLCB1dGlsczogUmVxdWVzdEluZm9VdGlsaXRpZXMpOiBQYXJzZWRSZXF1ZXN0VXJsIHtcbiAgICByZXR1cm4gdXRpbHMucGFyc2VSZXF1ZXN0VXJsKHVybCk7XG4gIH1cblxuICAvKipcbiAgICogQGRvY3MtcHJpdmF0ZVxuICAgKi9cbiAgY3JlYXRlRGIoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgY2F0ZWdvcmllczogdGhpcy5jYXRlZ29yaWVzLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgY2F0ZWdvcnkuXG4gICAqXG4gICAqIEBwYXJhbSByZXFJbmZvXG4gICAqL1xuICBnZXQocmVxSW5mbzogYW55KSB7XG4gICAgLy8gdGhpcyBtZXRob2QgaXMgb3ZlcmxvYWRlZCBmb3IgYm90aCBnZXQgYnkgSUQgYW5kIFVSTCBzbyB3ZSBjaGVjayBib3RoXG4gICAgY29uc3QgY2F0ZWdvcnkgPSB0aGlzLmNhdGVnb3JpZXMuZmlsdGVyKCh7IGlkLCB1cmwgfSkgPT4gaWQgPT09IHJlcUluZm8uaWQgfHwgZGFmZlVyaVRydW5jYXRlTGVhZGluZ1NsYXNoKHVybCkgPT09IHJlcUluZm8uaWQpWzBdO1xuXG4gICAgaWYgKGNhdGVnb3J5KSB7XG4gICAgICB0aGlzLl9jYXRlZ29yeVBhZ2VNZXRhZGF0YSA9IHRoaXMubWV0YWRhdGFGYWN0b3J5LmNyZWF0ZSh7XG4gICAgICAgIGlkOiByZXFJbmZvLmlkLFxuICAgICAgICBwYWdlU2l6ZTogdGhpcy5nZW5lcmF0ZVBhZ2VTaXplKHJlcUluZm8pLFxuICAgICAgICBjdXJyZW50UGFnZTogdGhpcy5nZXRDdXJyZW50UGFnZVBhcmFtKHJlcUluZm8pLFxuICAgICAgICB0b3RhbFBhZ2VzOiB0aGlzLmdldFRvdGFsUGFnZXMoY2F0ZWdvcnkucHJvZHVjdF9pZHMsIHRoaXMuZ2VuZXJhdGVQYWdlU2l6ZShyZXFJbmZvKSksXG4gICAgICAgIGlkczogdGhpcy50cmltUHJvZHVjdElkc1RvU2luZ2xlUGFnZShjYXRlZ29yeS5wcm9kdWN0X2lkcywgdGhpcy5nZXRDdXJyZW50UGFnZVBhcmFtKHJlcUluZm8pLCB0aGlzLmdlbmVyYXRlUGFnZVNpemUocmVxSW5mbykpLFxuICAgICAgICBjb3VudDogY2F0ZWdvcnkudG90YWxfcHJvZHVjdHMsXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHJlcUluZm8udXRpbHMuY3JlYXRlUmVzcG9uc2UkKCgpID0+ICh7XG4gICAgICAgIGJvZHk6IHtcbiAgICAgICAgICBjYXRlZ29yeSxcbiAgICAgICAgICBjYXRlZ29yeVBhZ2VNZXRhZGF0YTogdGhpcy5fY2F0ZWdvcnlQYWdlTWV0YWRhdGEsXG4gICAgICAgICAgcHJvZHVjdHM6IHRoaXMucHJvZHVjdEluTWVtb3J5QmFja2VuZFNlcnZpY2UucHJvZHVjdHMsXG4gICAgICAgIH0sXG4gICAgICAgIHN0YXR1czogU1RBVFVTLk9LLFxuICAgICAgfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jYXRlZ29yeVBhZ2VNZXRhZGF0YSA9IG51bGw7XG4gICAgICByZXR1cm4gcmVxSW5mby51dGlscy5jcmVhdGVSZXNwb25zZSQoKCkgPT4gKHtcbiAgICAgICAgYm9keToge30sXG4gICAgICAgIHN0YXR1czogU1RBVFVTLk5PVF9GT1VORCxcbiAgICAgIH0pKTtcbiAgICB9XG5cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRUb3RhbFBhZ2VzKGFsbElkczogRGFmZlByb2R1Y3RbJ2lkJ11bXSwgcGFnZVNpemU6IG51bWJlcikge1xuICAgIHJldHVybiBNYXRoLmNlaWwoYWxsSWRzLmxlbmd0aC9wYWdlU2l6ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdHJpbVByb2R1Y3RJZHNUb1NpbmdsZVBhZ2UoYWxsSWRzOiBhbnlbXSwgY3VycmVudFBhZ2U6IG51bWJlciwgcGFnZVNpemU6IG51bWJlcikge1xuICAgIGNvbnN0IHRlbXBJZHMgPSBbLi4uYWxsSWRzXTtcbiAgICB0ZW1wSWRzLnNwbGljZSgwLCAoY3VycmVudFBhZ2UtMSkgKiBwYWdlU2l6ZSk7XG4gICAgdGVtcElkcy5zcGxpY2UocGFnZVNpemUsIHRlbXBJZHMubGVuZ3RoLXBhZ2VTaXplKTtcblxuICAgIHJldHVybiB0ZW1wSWRzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdlbmVyYXRlUGFnZVNpemUocmVxSW5mbykge1xuICAgIGlmKHJlcUluZm8ucmVxLnBhcmFtcy5tYXAgJiYgcmVxSW5mby5yZXEucGFyYW1zLm1hcC5nZXQoJ3BhZ2VTaXplJykgJiYgcmVxSW5mby5yZXEucGFyYW1zLm1hcC5nZXQoJ3BhZ2VTaXplJylbMF0pIHtcbiAgICAgIHJldHVybiBwYXJzZUludChyZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgncGFnZVNpemUnKVswXSwgMTApO1xuICAgIH1cbiAgICByZXR1cm4gMTA7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Q3VycmVudFBhZ2VQYXJhbShyZXFJbmZvKSB7XG4gICAgaWYocmVxSW5mby5yZXEucGFyYW1zLm1hcCAmJiByZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgnY3VycmVudFBhZ2UnKSAmJiByZXFJbmZvLnJlcS5wYXJhbXMubWFwLmdldCgnY3VycmVudFBhZ2UnKVswXSkge1xuICAgICAgcmV0dXJuIHBhcnNlSW50KHJlcUluZm8ucmVxLnBhcmFtcy5tYXAuZ2V0KCdjdXJyZW50UGFnZScpWzBdLCAxMCk7XG4gICAgfVxuICAgIHJldHVybiAxO1xuICB9XG59XG4iXX0=
|
@@ -1,73 +0,0 @@
|
|
1
|
-
import { inject, NgModule, } from '@angular/core';
|
2
|
-
import { EffectsModule } from '@ngrx/effects';
|
3
|
-
import { DaffProductGetCollectionRequestFromRoute, DaffProductRoutingModule, } from '@daffodil/product/routing';
|
4
|
-
import { DaffCategoryRoutingCollectionEffects } from './effects/collection-route.effects';
|
5
|
-
import { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS, } from './injection-tokens/public_api';
|
6
|
-
import { DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER } from './injection-tokens/request/builder.token';
|
7
|
-
import { DaffCategoryPageIdResolver, DaffCategoryPageResolver, DaffCategoryPageUrlResolver, } from './resolvers/public_api';
|
8
|
-
import { DaffCategoryRoutingUrlRequestBuilder } from './services/public_api';
|
9
|
-
import * as i0 from "@angular/core";
|
10
|
-
import * as i1 from "@ngrx/effects";
|
11
|
-
export class DaffCategoryRoutingModule {
|
12
|
-
}
|
13
|
-
/** @nocollapse */ DaffCategoryRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
14
|
-
/** @nocollapse */ DaffCategoryRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryRoutingModule, imports: [DaffProductRoutingModule, i1.EffectsFeatureModule] });
|
15
|
-
/** @nocollapse */ DaffCategoryRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryRoutingModule, providers: [
|
16
|
-
DaffCategoryPageResolver,
|
17
|
-
DaffCategoryPageIdResolver,
|
18
|
-
DaffCategoryPageUrlResolver,
|
19
|
-
DaffCategoryRoutingUrlRequestBuilder,
|
20
|
-
{
|
21
|
-
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
|
22
|
-
useFactory: (() => {
|
23
|
-
const service = inject(DaffProductGetCollectionRequestFromRoute);
|
24
|
-
const builder = (route => service.getRequest(route.queryParamMap));
|
25
|
-
return builder;
|
26
|
-
}),
|
27
|
-
multi: true,
|
28
|
-
},
|
29
|
-
{
|
30
|
-
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,
|
31
|
-
useFactory: (() => {
|
32
|
-
const builders = inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS);
|
33
|
-
return ((route) => Object.assign({}, ...builders.map((builder => builder(route)))));
|
34
|
-
}),
|
35
|
-
},
|
36
|
-
], imports: [DaffProductRoutingModule,
|
37
|
-
EffectsModule.forFeature([
|
38
|
-
DaffCategoryRoutingCollectionEffects,
|
39
|
-
])] });
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryRoutingModule, decorators: [{
|
41
|
-
type: NgModule,
|
42
|
-
args: [{
|
43
|
-
imports: [
|
44
|
-
DaffProductRoutingModule,
|
45
|
-
EffectsModule.forFeature([
|
46
|
-
DaffCategoryRoutingCollectionEffects,
|
47
|
-
]),
|
48
|
-
],
|
49
|
-
providers: [
|
50
|
-
DaffCategoryPageResolver,
|
51
|
-
DaffCategoryPageIdResolver,
|
52
|
-
DaffCategoryPageUrlResolver,
|
53
|
-
DaffCategoryRoutingUrlRequestBuilder,
|
54
|
-
{
|
55
|
-
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS,
|
56
|
-
useFactory: (() => {
|
57
|
-
const service = inject(DaffProductGetCollectionRequestFromRoute);
|
58
|
-
const builder = (route => service.getRequest(route.queryParamMap));
|
59
|
-
return builder;
|
60
|
-
}),
|
61
|
-
multi: true,
|
62
|
-
},
|
63
|
-
{
|
64
|
-
provide: DAFF_CATEGORY_ROUTING_OPTIONS_BUILDER,
|
65
|
-
useFactory: (() => {
|
66
|
-
const builders = inject(DAFF_CATEGORY_ROUTING_OPTIONS_BUILDERS);
|
67
|
-
return ((route) => Object.assign({}, ...builders.map((builder => builder(route)))));
|
68
|
-
}),
|
69
|
-
},
|
70
|
-
],
|
71
|
-
}]
|
72
|
-
}] });
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9yb3V0aW5nL3NyYy9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE1BQU0sRUFDTixRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5QyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLHdCQUF3QixHQUN6QixNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFGLE9BQU8sRUFDTCxzQ0FBc0MsR0FFdkMsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNqRyxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLHdCQUF3QixFQUN4QiwyQkFBMkIsR0FDNUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBaUM3RSxNQUFNLE9BQU8seUJBQXlCOzt5SUFBekIseUJBQXlCOzBJQUF6Qix5QkFBeUIsWUE3QmxDLHdCQUF3QjswSUE2QmYseUJBQXlCLGFBeEJ6QjtRQUNULHdCQUF3QjtRQUN4QiwwQkFBMEI7UUFDMUIsMkJBQTJCO1FBQzNCLG9DQUFvQztRQUNwQztZQUNFLE9BQU8sRUFBRSxzQ0FBc0M7WUFDL0MsVUFBVSxHQUFFLEdBQUcsRUFBRTtnQkFDZixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQztnQkFDakUsTUFBTSxPQUFPLElBQXNDLEtBQUssQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUEsQ0FBQztnQkFDcEcsT0FBTyxPQUFPLENBQUM7WUFDakIsQ0FBQyxDQUFBO1lBQ0QsS0FBSyxFQUFFLElBQUk7U0FDWjtRQUNEO1lBQ0UsT0FBTyxFQUFFLHFDQUFxQztZQUM5QyxVQUFVLEdBQUUsR0FBRyxFQUFFO2dCQUNmLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO2dCQUNoRSxRQUFPLENBQUMsS0FBNkIsRUFBRSxFQUFFLENBQ3ZDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBQyxDQUFDLEVBQUM7WUFDbEUsQ0FBQyxDQUFBO1NBQ0Y7S0FDRixZQTNCQyx3QkFBd0I7UUFDeEIsYUFBYSxDQUFDLFVBQVUsQ0FBQztZQUN2QixvQ0FBb0M7U0FDckMsQ0FBQzsyRkEwQk8seUJBQXlCO2tCQS9CckMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4QixhQUFhLENBQUMsVUFBVSxDQUFDOzRCQUN2QixvQ0FBb0M7eUJBQ3JDLENBQUM7cUJBQ0g7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQiwyQkFBMkI7d0JBQzNCLG9DQUFvQzt3QkFDcEM7NEJBQ0UsT0FBTyxFQUFFLHNDQUFzQzs0QkFDL0MsVUFBVSxHQUFFLEdBQUcsRUFBRTtnQ0FDZixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQztnQ0FDakUsTUFBTSxPQUFPLElBQXNDLEtBQUssQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUEsQ0FBQztnQ0FDcEcsT0FBTyxPQUFPLENBQUM7NEJBQ2pCLENBQUMsQ0FBQTs0QkFDRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUscUNBQXFDOzRCQUM5QyxVQUFVLEdBQUUsR0FBRyxFQUFFO2dDQUNmLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO2dDQUNoRSxRQUFPLENBQUMsS0FBNkIsRUFBRSxFQUFFLENBQ3ZDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBQyxDQUFDLEVBQUM7NEJBQ2xFLENBQUMsQ0FBQTt5QkFDRjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGluamVjdCxcbiAgTmdNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5cbmltcG9ydCB7XG4gIERhZmZQcm9kdWN0R2V0Q29sbGVjdGlvblJlcXVlc3RGcm9tUm91dGUsXG4gIERhZmZQcm9kdWN0Um91dGluZ01vZHVsZSxcbn0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3Qvcm91dGluZyc7XG5cbmltcG9ydCB7IERhZmZDYXRlZ29yeVJvdXRpbmdDb2xsZWN0aW9uRWZmZWN0cyB9IGZyb20gJy4vZWZmZWN0cy9jb2xsZWN0aW9uLXJvdXRlLmVmZmVjdHMnO1xuaW1wb3J0IHtcbiAgREFGRl9DQVRFR09SWV9ST1VUSU5HX09QVElPTlNfQlVJTERFUlMsXG4gIERhZmZDYXRlZ29yeVJvdXRpbmdSZXF1ZXN0QnVpbGRlcixcbn0gZnJvbSAnLi9pbmplY3Rpb24tdG9rZW5zL3B1YmxpY19hcGknO1xuaW1wb3J0IHsgREFGRl9DQVRFR09SWV9ST1VUSU5HX09QVElPTlNfQlVJTERFUiB9IGZyb20gJy4vaW5qZWN0aW9uLXRva2Vucy9yZXF1ZXN0L2J1aWxkZXIudG9rZW4nO1xuaW1wb3J0IHtcbiAgRGFmZkNhdGVnb3J5UGFnZUlkUmVzb2x2ZXIsXG4gIERhZmZDYXRlZ29yeVBhZ2VSZXNvbHZlcixcbiAgRGFmZkNhdGVnb3J5UGFnZVVybFJlc29sdmVyLFxufSBmcm9tICcuL3Jlc29sdmVycy9wdWJsaWNfYXBpJztcbmltcG9ydCB7IERhZmZDYXRlZ29yeVJvdXRpbmdVcmxSZXF1ZXN0QnVpbGRlciB9IGZyb20gJy4vc2VydmljZXMvcHVibGljX2FwaSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBEYWZmUHJvZHVjdFJvdXRpbmdNb2R1bGUsXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtcbiAgICAgIERhZmZDYXRlZ29yeVJvdXRpbmdDb2xsZWN0aW9uRWZmZWN0cyxcbiAgICBdKSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRGFmZkNhdGVnb3J5UGFnZVJlc29sdmVyLFxuICAgIERhZmZDYXRlZ29yeVBhZ2VJZFJlc29sdmVyLFxuICAgIERhZmZDYXRlZ29yeVBhZ2VVcmxSZXNvbHZlcixcbiAgICBEYWZmQ2F0ZWdvcnlSb3V0aW5nVXJsUmVxdWVzdEJ1aWxkZXIsXG4gICAge1xuICAgICAgcHJvdmlkZTogREFGRl9DQVRFR09SWV9ST1VUSU5HX09QVElPTlNfQlVJTERFUlMsXG4gICAgICB1c2VGYWN0b3J5OiAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHNlcnZpY2UgPSBpbmplY3QoRGFmZlByb2R1Y3RHZXRDb2xsZWN0aW9uUmVxdWVzdEZyb21Sb3V0ZSk7XG4gICAgICAgIGNvbnN0IGJ1aWxkZXI6IERhZmZDYXRlZ29yeVJvdXRpbmdSZXF1ZXN0QnVpbGRlciA9IHJvdXRlID0+IHNlcnZpY2UuZ2V0UmVxdWVzdChyb3V0ZS5xdWVyeVBhcmFtTWFwKTtcbiAgICAgICAgcmV0dXJuIGJ1aWxkZXI7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBEQUZGX0NBVEVHT1JZX1JPVVRJTkdfT1BUSU9OU19CVUlMREVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4ge1xuICAgICAgICBjb25zdCBidWlsZGVycyA9IGluamVjdChEQUZGX0NBVEVHT1JZX1JPVVRJTkdfT1BUSU9OU19CVUlMREVSUyk7XG4gICAgICAgIHJldHVybiAocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpID0+XG4gICAgICAgICAgT2JqZWN0LmFzc2lnbih7fSwgLi4uYnVpbGRlcnMubWFwKGJ1aWxkZXIgPT4gYnVpbGRlcihyb3V0ZSkpKTtcbiAgICAgIH0sXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRGFmZkNhdGVnb3J5Um91dGluZ01vZHVsZSB7fVxuIl19
|
@@ -1,25 +0,0 @@
|
|
1
|
-
import { Injectable } from '@angular/core';
|
2
|
-
import { DaffCategoryPageIdResolver } from '../category-page-id/category-page-id.resolver';
|
3
|
-
import * as i0 from "@angular/core";
|
4
|
-
import * as i1 from "../category-page-id/category-page-id.resolver";
|
5
|
-
/**
|
6
|
-
* Resolves category data for category pages, and will only resolve the url after a category request succeeds or fails. This resolver expects a url
|
7
|
-
* of the form `some/url/{id}` where `{id}` is the category id.
|
8
|
-
*
|
9
|
-
* @deprecated
|
10
|
-
* @see DaffCategoryPageIdResolver
|
11
|
-
*/
|
12
|
-
export class DaffCategoryPageResolver {
|
13
|
-
constructor(categoryPageIdResolver) {
|
14
|
-
this.categoryPageIdResolver = categoryPageIdResolver;
|
15
|
-
}
|
16
|
-
resolve(route) {
|
17
|
-
return this.categoryPageIdResolver.resolve(route);
|
18
|
-
}
|
19
|
-
}
|
20
|
-
/** @nocollapse */ DaffCategoryPageResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryPageResolver, deps: [{ token: i1.DaffCategoryPageIdResolver }], target: i0.ɵɵFactoryTarget.Injectable });
|
21
|
-
/** @nocollapse */ DaffCategoryPageResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryPageResolver });
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryPageResolver, decorators: [{
|
23
|
-
type: Injectable
|
24
|
-
}], ctorParameters: function () { return [{ type: i1.DaffCategoryPageIdResolver }]; } });
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktcGFnZS5yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2F0ZWdvcnkvcm91dGluZy9zcmMvcmVzb2x2ZXJzL2NhdGVnb3J5LXBhZ2UvY2F0ZWdvcnktcGFnZS5yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7QUFFM0Y7Ozs7OztHQU1HO0FBRUgsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQyxZQUNVLHNCQUFrRDtRQUFsRCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQTRCO0lBQ3hELENBQUM7SUFFTCxPQUFPLENBQUMsS0FBNkI7UUFDbkMsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7O3dJQVBVLHdCQUF3Qjs0SUFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBSZXNvbHZlLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBEYWZmQ2F0ZWdvcnlQYWdlSWRSZXNvbHZlciB9IGZyb20gJy4uL2NhdGVnb3J5LXBhZ2UtaWQvY2F0ZWdvcnktcGFnZS1pZC5yZXNvbHZlcic7XG5cbi8qKlxuICogUmVzb2x2ZXMgY2F0ZWdvcnkgZGF0YSBmb3IgY2F0ZWdvcnkgcGFnZXMsIGFuZCB3aWxsIG9ubHkgcmVzb2x2ZSB0aGUgdXJsIGFmdGVyIGEgY2F0ZWdvcnkgcmVxdWVzdCBzdWNjZWVkcyBvciBmYWlscy4gVGhpcyByZXNvbHZlciBleHBlY3RzIGEgdXJsXG4gKiBvZiB0aGUgZm9ybSBgc29tZS91cmwve2lkfWAgd2hlcmUgYHtpZH1gIGlzIHRoZSBjYXRlZ29yeSBpZC5cbiAqXG4gKiBAZGVwcmVjYXRlZFxuICogQHNlZSBEYWZmQ2F0ZWdvcnlQYWdlSWRSZXNvbHZlclxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGFmZkNhdGVnb3J5UGFnZVJlc29sdmVyIGltcGxlbWVudHMgUmVzb2x2ZTxPYnNlcnZhYmxlPGJvb2xlYW4+PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2F0ZWdvcnlQYWdlSWRSZXNvbHZlcjogRGFmZkNhdGVnb3J5UGFnZUlkUmVzb2x2ZXIsXG4gICkgeyB9XG5cbiAgcmVzb2x2ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmNhdGVnb3J5UGFnZUlkUmVzb2x2ZXIucmVzb2x2ZShyb3V0ZSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,52 +0,0 @@
|
|
1
|
-
import { Injectable } from '@angular/core';
|
2
|
-
import { Store, select, } from '@ngrx/store';
|
3
|
-
import { getDaffCategorySelectors } from '../../selectors/category.selector';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
import * as i1 from "@ngrx/store";
|
6
|
-
/**
|
7
|
-
* A facade for interacting with the category state.
|
8
|
-
* This facade exposes many parts of the state for easy access and allows dispatching of actions.
|
9
|
-
*
|
10
|
-
* @inheritdoc
|
11
|
-
*/
|
12
|
-
export class DaffCategoryFacade {
|
13
|
-
constructor(store) {
|
14
|
-
this.store = store;
|
15
|
-
this.categorySelectors = getDaffCategorySelectors();
|
16
|
-
this.category$ = this.store.pipe(select(this.categorySelectors.selectCurrentCategory));
|
17
|
-
this.products$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageProducts));
|
18
|
-
this.loadingState$ = this.store.pipe(select(this.categorySelectors.selectLoadingState));
|
19
|
-
this.loading$ = this.store.pipe(select(this.categorySelectors.selectLoading));
|
20
|
-
this.mutating$ = this.store.pipe(select(this.categorySelectors.selectMutating));
|
21
|
-
this.resolving$ = this.store.pipe(select(this.categorySelectors.selectResolving));
|
22
|
-
this.errors$ = this.store.pipe(select(this.categorySelectors.selectErrors));
|
23
|
-
this.hasErrors$ = this.store.pipe(select(this.categorySelectors.selectHasErrors));
|
24
|
-
this.isCategoryEmpty$ = this.store.pipe(select(this.categorySelectors.selectIsCategoryPageEmpty));
|
25
|
-
}
|
26
|
-
getCategoryById(id) {
|
27
|
-
return this.store.pipe(select(this.categorySelectors.selectCategory(id)));
|
28
|
-
}
|
29
|
-
getProductsByCategory(categoryId) {
|
30
|
-
return this.store.pipe(select(this.categorySelectors.selectProductsByCategory(categoryId)));
|
31
|
-
}
|
32
|
-
getTotalProductsByCategory(categoryId) {
|
33
|
-
return this.store.pipe(select(this.categorySelectors.selectTotalProductsByCategory(categoryId)));
|
34
|
-
}
|
35
|
-
/**
|
36
|
-
* Dispatches the given action.
|
37
|
-
*
|
38
|
-
* @param action action to dispatch.
|
39
|
-
*/
|
40
|
-
dispatch(action) {
|
41
|
-
this.store.dispatch(action);
|
42
|
-
}
|
43
|
-
}
|
44
|
-
/** @nocollapse */ DaffCategoryFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryFacade, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
45
|
-
/** @nocollapse */ DaffCategoryFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryFacade, providedIn: 'root' });
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCategoryFacade, decorators: [{
|
47
|
-
type: Injectable,
|
48
|
-
args: [{
|
49
|
-
providedIn: 'root',
|
50
|
-
}]
|
51
|
-
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnkuZmFjYWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jYXRlZ29yeS9zdGF0ZS9zcmMvZmFjYWRlcy9wYWdlL2NhdGVnb3J5LmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFDTCxLQUFLLEVBQ0wsTUFBTSxHQUVQLE1BQU0sYUFBYSxDQUFDO0FBZXJCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFFN0U7Ozs7O0dBS0c7QUFJSCxNQUFNLE9BQU8sa0JBQWtCO0lBNEI3QixZQUFvQixLQUE4QztRQUE5QyxVQUFLLEdBQUwsS0FBSyxDQUF5QztRQXhCMUQsc0JBQWlCLEdBQUcsd0JBQXdCLEVBQU8sQ0FBQztRQXlCM0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQztRQUN2RixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDO1FBQzVGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUF0QkQsZUFBZSxDQUFDLEVBQVc7UUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELHFCQUFxQixDQUFDLFVBQW1CO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELDBCQUEwQixDQUFDLFVBQW1CO1FBQzdDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQWNEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsTUFBYztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QixDQUFDOztrSUEvQ1Usa0JBQWtCO3NJQUFsQixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU3RvcmUsXG4gIHNlbGVjdCxcbiAgQWN0aW9uLFxufSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIERhZmZHZW5lcmljQ2F0ZWdvcnksXG4gIERhZmZDYXRlZ29yeSxcbn0gZnJvbSAnQGRhZmZvZGlsL2NhdGVnb3J5JztcbmltcG9ydCB7IERhZmZTdGF0ZUVycm9yIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUvc3RhdGUnO1xuaW1wb3J0IHsgRGFmZlByb2R1Y3QgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdCc7XG5cbmltcG9ydCB7IERhZmZDYXRlZ29yeUZhY2FkZUludGVyZmFjZSB9IGZyb20gJy4vY2F0ZWdvcnktZmFjYWRlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBEYWZmQ2F0ZWdvcnlTdGF0ZVJvb3RTbGljZSxcbiAgRGFmZkNhdGVnb3J5UmVkdWNlclN0YXRlLFxufSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9wdWJsaWNfYXBpJztcbmltcG9ydCB7IGdldERhZmZDYXRlZ29yeVNlbGVjdG9ycyB9IGZyb20gJy4uLy4uL3NlbGVjdG9ycy9jYXRlZ29yeS5zZWxlY3Rvcic7XG5cbi8qKlxuICogQSBmYWNhZGUgZm9yIGludGVyYWN0aW5nIHdpdGggdGhlIGNhdGVnb3J5IHN0YXRlLlxuICogVGhpcyBmYWNhZGUgZXhwb3NlcyBtYW55IHBhcnRzIG9mIHRoZSBzdGF0ZSBmb3IgZWFzeSBhY2Nlc3MgYW5kIGFsbG93cyBkaXNwYXRjaGluZyBvZiBhY3Rpb25zLlxuICpcbiAqIEBpbmhlcml0ZG9jXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBEYWZmQ2F0ZWdvcnlGYWNhZGU8XG4gIFYgZXh0ZW5kcyBEYWZmR2VuZXJpY0NhdGVnb3J5PFY+ID0gRGFmZkNhdGVnb3J5LFxuICBXIGV4dGVuZHMgRGFmZlByb2R1Y3QgPSBEYWZmUHJvZHVjdFxuPiBpbXBsZW1lbnRzIERhZmZDYXRlZ29yeUZhY2FkZUludGVyZmFjZTxWLCBXPiB7XG4gIHByaXZhdGUgY2F0ZWdvcnlTZWxlY3RvcnMgPSBnZXREYWZmQ2F0ZWdvcnlTZWxlY3RvcnM8VixXPigpO1xuXG4gIGNhdGVnb3J5JDogT2JzZXJ2YWJsZTxWPjtcbiAgbG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxEYWZmQ2F0ZWdvcnlSZWR1Y2VyU3RhdGVbJ2RhZmZTdGF0ZSddPjtcbiAgbG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIG11dGF0aW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcmVzb2x2aW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHJvZHVjdHMkOiBPYnNlcnZhYmxlPFdbXT47XG4gIGVycm9ycyQ6IE9ic2VydmFibGU8RGFmZlN0YXRlRXJyb3JbXT47XG4gIGhhc0Vycm9ycyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGlzQ2F0ZWdvcnlFbXB0eSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgZ2V0Q2F0ZWdvcnlCeUlkKGlkOiBWWydpZCddKTogT2JzZXJ2YWJsZTxWPiB7XG5cdCAgcmV0dXJuIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5jYXRlZ29yeVNlbGVjdG9ycy5zZWxlY3RDYXRlZ29yeShpZCkpKTtcbiAgfVxuXG4gIGdldFByb2R1Y3RzQnlDYXRlZ29yeShjYXRlZ29yeUlkOiBWWydpZCddKTogT2JzZXJ2YWJsZTxXW10+IHtcblx0ICByZXR1cm4gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmNhdGVnb3J5U2VsZWN0b3JzLnNlbGVjdFByb2R1Y3RzQnlDYXRlZ29yeShjYXRlZ29yeUlkKSkpO1xuICB9XG5cbiAgZ2V0VG90YWxQcm9kdWN0c0J5Q2F0ZWdvcnkoY2F0ZWdvcnlJZDogVlsnaWQnXSk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG5cdCAgcmV0dXJuIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5jYXRlZ29yeVNlbGVjdG9ycy5zZWxlY3RUb3RhbFByb2R1Y3RzQnlDYXRlZ29yeShjYXRlZ29yeUlkKSkpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8RGFmZkNhdGVnb3J5U3RhdGVSb290U2xpY2U8ViwgVz4+KSB7XG5cdCAgdGhpcy5jYXRlZ29yeSQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0Q3VycmVudENhdGVnb3J5KSk7XG5cdCAgdGhpcy5wcm9kdWN0cyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0Q2F0ZWdvcnlQYWdlUHJvZHVjdHMpKTtcblx0ICB0aGlzLmxvYWRpbmdTdGF0ZSQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0TG9hZGluZ1N0YXRlKSk7XG5cdCAgdGhpcy5sb2FkaW5nJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5jYXRlZ29yeVNlbGVjdG9ycy5zZWxlY3RMb2FkaW5nKSk7XG5cdCAgdGhpcy5tdXRhdGluZyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0TXV0YXRpbmcpKTtcblx0ICB0aGlzLnJlc29sdmluZyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0UmVzb2x2aW5nKSk7XG5cdCAgdGhpcy5lcnJvcnMkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmNhdGVnb3J5U2VsZWN0b3JzLnNlbGVjdEVycm9ycykpO1xuXHQgIHRoaXMuaGFzRXJyb3JzJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5jYXRlZ29yeVNlbGVjdG9ycy5zZWxlY3RIYXNFcnJvcnMpKTtcblx0ICB0aGlzLmlzQ2F0ZWdvcnlFbXB0eSQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMuY2F0ZWdvcnlTZWxlY3RvcnMuc2VsZWN0SXNDYXRlZ29yeVBhZ2VFbXB0eSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc3BhdGNoZXMgdGhlIGdpdmVuIGFjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIGFjdGlvbiBhY3Rpb24gdG8gZGlzcGF0Y2guXG4gICAqL1xuICBkaXNwYXRjaChhY3Rpb246IEFjdGlvbikge1xuXHQgIHRoaXMuc3RvcmUuZGlzcGF0Y2goYWN0aW9uKTtcbiAgfVxufVxuIl19
|