@daffodil/category 0.42.4 → 0.44.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/category.service.d.ts +2 -3
- package/driver/magento/models/complete-category-response.d.ts +6 -6
- package/driver/magento/models/get-products-response.d.ts +3 -5
- package/driver/magento/models/public_api.d.ts +0 -10
- package/driver/magento/models/requests/get-products-by-categories-request.d.ts +2 -3
- package/driver/magento/queries/public_api.d.ts +0 -1
- package/driver/magento/testing/factories/public_api.d.ts +0 -4
- package/driver/magento/transformers/applied-filter-transformer.service.d.ts +6 -13
- package/driver/magento/transformers/public_api.d.ts +0 -1
- package/driver/magento/transformers/pure/add-metadata-types-to-aggregates.d.ts +3 -0
- package/esm2020/driver/in-memory/backend/category.service.mjs +10 -10
- package/esm2020/driver/in-memory/drivers/category.service.mjs +5 -5
- package/esm2020/driver/magento/category-driver.module.mjs +2 -4
- package/esm2020/driver/magento/category.service.mjs +26 -25
- package/esm2020/driver/magento/models/complete-category-response.mjs +1 -1
- package/esm2020/driver/magento/models/get-products-response.mjs +1 -1
- package/esm2020/driver/magento/models/public_api.mjs +2 -4
- package/esm2020/driver/magento/models/requests/get-products-by-categories-request.mjs +1 -1
- package/esm2020/driver/magento/queries/get-products.mjs +9 -18
- package/esm2020/driver/magento/queries/public_api.mjs +1 -2
- package/esm2020/driver/magento/testing/factories/category.factory.mjs +3 -1
- package/esm2020/driver/magento/testing/factories/public_api.mjs +1 -5
- package/esm2020/driver/magento/transformers/applied-filter-transformer.service.mjs +13 -44
- package/esm2020/driver/magento/transformers/category-page-config-transformer.service.mjs +3 -17
- package/esm2020/driver/magento/transformers/public_api.mjs +1 -2
- package/esm2020/driver/magento/transformers/pure/add-metadata-types-to-aggregates.mjs +16 -0
- package/esm2020/models/category-page-metadata.mjs +1 -1
- package/esm2020/models/category-request.mjs +1 -1
- package/esm2020/models/public_api.mjs +1 -2
- package/esm2020/public_api.mjs +1 -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 +3 -6
- 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/effects/category-page-filter.effects.mjs +14 -13
- package/esm2020/state/effects/category-page.effects.mjs +14 -12
- 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 -113
- 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 +4 -24
- 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 +5 -2
- package/esm2020/state/testing/mock-category-facade.mjs +1 -1
- package/esm2020/testing/factories/category-page-metadata.factory.mjs +11 -32
- package/esm2020/testing/factories/category.factory.mjs +1 -1
- package/esm2020/testing/factories/public_api.mjs +1 -2
- package/fesm2015/daffodil-category-driver-in-memory.mjs +13 -13
- package/fesm2015/daffodil-category-driver-in-memory.mjs.map +1 -1
- package/fesm2015/daffodil-category-driver-magento-testing.mjs +3 -174
- package/fesm2015/daffodil-category-driver-magento-testing.mjs.map +1 -1
- package/fesm2015/daffodil-category-driver-magento.mjs +45 -208
- package/fesm2015/daffodil-category-driver-magento.mjs.map +1 -1
- package/fesm2015/daffodil-category-routing.mjs +139 -32
- package/fesm2015/daffodil-category-routing.mjs.map +1 -1
- package/fesm2015/daffodil-category-state-testing.mjs +4 -1
- package/fesm2015/daffodil-category-state-testing.mjs.map +1 -1
- package/fesm2015/daffodil-category-state.mjs +218 -214
- package/fesm2015/daffodil-category-state.mjs.map +1 -1
- package/fesm2015/daffodil-category-testing.mjs +10 -364
- package/fesm2015/daffodil-category-testing.mjs.map +1 -1
- package/fesm2015/daffodil-category.mjs +1 -512
- package/fesm2015/daffodil-category.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-in-memory.mjs +13 -13
- package/fesm2020/daffodil-category-driver-in-memory.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-magento-testing.mjs +3 -174
- package/fesm2020/daffodil-category-driver-magento-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category-driver-magento.mjs +48 -215
- package/fesm2020/daffodil-category-driver-magento.mjs.map +1 -1
- package/fesm2020/daffodil-category-routing.mjs +139 -28
- package/fesm2020/daffodil-category-routing.mjs.map +1 -1
- package/fesm2020/daffodil-category-state-testing.mjs +4 -1
- package/fesm2020/daffodil-category-state-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category-state.mjs +233 -295
- package/fesm2020/daffodil-category-state.mjs.map +1 -1
- package/fesm2020/daffodil-category-testing.mjs +10 -383
- package/fesm2020/daffodil-category-testing.mjs.map +1 -1
- package/fesm2020/daffodil-category.mjs +1 -565
- package/fesm2020/daffodil-category.mjs.map +1 -1
- package/models/category-page-metadata.d.ts +3 -12
- package/models/category-request.d.ts +3 -30
- package/models/public_api.d.ts +1 -2
- package/package.json +4 -4
- package/public_api.d.ts +0 -2
- 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 +60 -20
- 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 +2 -44
- 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 +6 -6
- package/testing/factories/category-page-metadata.factory.d.ts +4 -18
- package/testing/factories/public_api.d.ts +0 -1
- package/driver/magento/models/aggregation.d.ts +0 -16
- package/driver/magento/models/filter-type-field.interface.d.ts +0 -7
- package/driver/magento/models/filter-type.enum.d.ts +0 -5
- package/driver/magento/models/get-filter-types-response.interface.d.ts +0 -6
- package/driver/magento/models/page-info.d.ts +0 -5
- package/driver/magento/models/requests/filters.d.ts +0 -13
- package/driver/magento/models/requests/sort.d.ts +0 -7
- package/driver/magento/models/sort-fields.d.ts +0 -8
- package/driver/magento/queries/get-filter-types.d.ts +0 -2
- package/driver/magento/testing/factories/aggregation/aggregation.factory.d.ts +0 -12
- package/driver/magento/testing/factories/aggregation/public_api.d.ts +0 -3
- package/driver/magento/testing/factories/aggregation/type/price.factory.d.ts +0 -8
- package/driver/magento/testing/factories/aggregation/type/select.factory.d.ts +0 -8
- package/driver/magento/testing/factories/filter-type-field.factory.d.ts +0 -8
- package/driver/magento/testing/factories/page-info.factory.d.ts +0 -8
- package/driver/magento/testing/factories/sort-fields.factory.d.ts +0 -8
- package/driver/magento/transformers/applied-sort-option-transformer.service.d.ts +0 -9
- package/driver/magento/transformers/pure/aggregate/add-metadata-types-to-aggregates.d.ts +0 -2
- package/driver/magento/transformers/pure/aggregate/get-matched-attribute-type.d.ts +0 -3
- package/driver/magento/transformers/pure/aggregate/transform.d.ts +0 -3
- package/driver/magento/transformers/pure/aggregate/type/equal.d.ts +0 -3
- package/driver/magento/transformers/pure/aggregate/type/range.d.ts +0 -8
- package/driver/magento/transformers/pure/sort-default-option-first.d.ts +0 -2
- package/errors/codes.enum.d.ts +0 -15
- package/errors/map.d.ts +0 -5
- package/errors/public_api.d.ts +0 -2
- package/esm2020/driver/magento/models/aggregation.mjs +0 -2
- package/esm2020/driver/magento/models/filter-type-field.interface.mjs +0 -2
- package/esm2020/driver/magento/models/filter-type.enum.mjs +0 -8
- package/esm2020/driver/magento/models/get-filter-types-response.interface.mjs +0 -2
- package/esm2020/driver/magento/models/page-info.mjs +0 -2
- package/esm2020/driver/magento/models/requests/filters.mjs +0 -9
- package/esm2020/driver/magento/models/requests/sort.mjs +0 -6
- package/esm2020/driver/magento/models/sort-fields.mjs +0 -2
- package/esm2020/driver/magento/queries/get-filter-types.mjs +0 -15
- package/esm2020/driver/magento/testing/factories/aggregation/aggregation.factory.mjs +0 -24
- package/esm2020/driver/magento/testing/factories/aggregation/public_api.mjs +0 -4
- package/esm2020/driver/magento/testing/factories/aggregation/type/price.factory.mjs +0 -49
- package/esm2020/driver/magento/testing/factories/aggregation/type/select.factory.mjs +0 -44
- package/esm2020/driver/magento/testing/factories/filter-type-field.factory.mjs +0 -32
- package/esm2020/driver/magento/testing/factories/page-info.factory.mjs +0 -25
- package/esm2020/driver/magento/testing/factories/sort-fields.factory.mjs +0 -28
- package/esm2020/driver/magento/transformers/applied-sort-option-transformer.service.mjs +0 -28
- package/esm2020/driver/magento/transformers/pure/aggregate/add-metadata-types-to-aggregates.mjs +0 -16
- package/esm2020/driver/magento/transformers/pure/aggregate/get-matched-attribute-type.mjs +0 -2
- package/esm2020/driver/magento/transformers/pure/aggregate/transform.mjs +0 -14
- package/esm2020/driver/magento/transformers/pure/aggregate/type/equal.mjs +0 -16
- package/esm2020/driver/magento/transformers/pure/aggregate/type/range.mjs +0 -15
- package/esm2020/driver/magento/transformers/pure/sort-default-option-first.mjs +0 -12
- package/esm2020/errors/codes.enum.mjs +0 -12
- package/esm2020/errors/map.mjs +0 -8
- package/esm2020/errors/public_api.mjs +0 -3
- package/esm2020/filters/array-to-dict/array-to-dict.mjs +0 -6
- package/esm2020/filters/behaviors/apply/apply-filter.mjs +0 -24
- package/esm2020/filters/behaviors/apply/apply-request-to-filters.mjs +0 -12
- package/esm2020/filters/behaviors/apply/apply-requests-to-filters.mjs +0 -12
- package/esm2020/filters/behaviors/apply/public_api.mjs +0 -4
- package/esm2020/filters/behaviors/clear/clear-filter.mjs +0 -21
- package/esm2020/filters/behaviors/clear/clear-filters.mjs +0 -12
- package/esm2020/filters/behaviors/clear/public_api.mjs +0 -3
- package/esm2020/filters/behaviors/remove/public_api.mjs +0 -4
- package/esm2020/filters/behaviors/remove/remove-filter.mjs +0 -25
- package/esm2020/filters/behaviors/remove/remove-request-from-filters.mjs +0 -12
- package/esm2020/filters/behaviors/remove/remove-requests-from-filters.mjs +0 -13
- package/esm2020/filters/behaviors/toggle/public_api.mjs +0 -3
- package/esm2020/filters/behaviors/toggle/toggle-request-on-filters.mjs +0 -10
- package/esm2020/filters/behaviors/toggle/toggle.mjs +0 -22
- package/esm2020/filters/compute-applied-filters/compute-applied-filters.mjs +0 -21
- package/esm2020/filters/errors/codes.enum.mjs +0 -13
- package/esm2020/filters/errors/filter-not-found.error.mjs +0 -12
- package/esm2020/filters/errors/map.mjs +0 -15
- package/esm2020/filters/errors/public_api.mjs +0 -5
- package/esm2020/filters/errors/request-name-mismatch.error.mjs +0 -13
- package/esm2020/filters/errors/request-type-mismatch.error.mjs +0 -13
- package/esm2020/filters/errors/unknown-filter-type.error.mjs +0 -13
- package/esm2020/filters/find-applied/find-applied-options.mjs +0 -5
- package/esm2020/filters/find-applied/public_api.mjs +0 -2
- package/esm2020/filters/is-applied/is-filter-applied.mjs +0 -18
- package/esm2020/filters/is-applied/is-toggle-request-applied-to-filter.mjs +0 -18
- package/esm2020/filters/is-applied/public_api.mjs +0 -3
- package/esm2020/filters/public_api.mjs +0 -14
- package/esm2020/filters/to-request/filter-to-request.mjs +0 -20
- package/esm2020/filters/to-request/filters-to-requests.mjs +0 -15
- package/esm2020/filters/to-request/public_api.mjs +0 -3
- package/esm2020/filters/type/equal/array-to-dict/option.mjs +0 -6
- package/esm2020/filters/type/equal/behaviors/apply/apply.mjs +0 -20
- package/esm2020/filters/type/equal/behaviors/clear/clear.mjs +0 -17
- package/esm2020/filters/type/equal/behaviors/remove/remove.mjs +0 -23
- package/esm2020/filters/type/equal/behaviors/toggle/toggle.mjs +0 -24
- package/esm2020/filters/type/equal/is-applied/is-applied.mjs +0 -5
- package/esm2020/filters/type/equal/is-applied/is-toggle-request-applied-to-filter.mjs +0 -5
- package/esm2020/filters/type/equal/public_api.mjs +0 -2
- package/esm2020/filters/type/equal/to-request/filter-to-request.mjs +0 -17
- package/esm2020/filters/type/range/array-to-dict/pair.mjs +0 -7
- package/esm2020/filters/type/range/behaviors/apply/apply.mjs +0 -24
- package/esm2020/filters/type/range/behaviors/clear/clear.mjs +0 -11
- package/esm2020/filters/type/range/behaviors/remove/remove.mjs +0 -17
- package/esm2020/filters/type/range/behaviors/toggle/toggle.mjs +0 -15
- package/esm2020/filters/type/range/compute-pair-label.mjs +0 -3
- package/esm2020/filters/type/range/is-applied/is-applied.mjs +0 -5
- package/esm2020/filters/type/range/is-applied/is-toggle-request-applied-to-filter.mjs +0 -6
- package/esm2020/filters/type/range/public_api.mjs +0 -3
- package/esm2020/filters/type/range/to-request/filter-to-request.mjs +0 -19
- package/esm2020/filters/type/range-numeric/to-request/filter-to-request.mjs +0 -6
- package/esm2020/filters/validators/public_api.mjs +0 -3
- package/esm2020/filters/validators/request-name-match.mjs +0 -16
- package/esm2020/filters/validators/request-type-match.mjs +0 -12
- package/esm2020/models/filters/category-filter-base.mjs +0 -2
- package/esm2020/models/filters/category-filter-option-base.mjs +0 -2
- package/esm2020/models/filters/category-filter-option.mjs +0 -2
- package/esm2020/models/filters/category-filter.mjs +0 -2
- package/esm2020/models/filters/category-filterable.mjs +0 -2
- package/esm2020/models/filters/filter-request.mjs +0 -2
- package/esm2020/models/filters/filter-toggle-request.mjs +0 -2
- package/esm2020/models/filters/public_api.mjs +0 -5
- package/esm2020/models/filters/type/category-filter-type.mjs +0 -9
- package/esm2020/models/filters/type/equal/filter.mjs +0 -2
- package/esm2020/models/filters/type/equal/option.mjs +0 -2
- package/esm2020/models/filters/type/equal/public_api.mjs +0 -2
- package/esm2020/models/filters/type/equal/request.mjs +0 -2
- package/esm2020/models/filters/type/equal/toggle-request.mjs +0 -2
- package/esm2020/models/filters/type/range/filter-base.mjs +0 -2
- package/esm2020/models/filters/type/range/option.mjs +0 -2
- package/esm2020/models/filters/type/range/pair.mjs +0 -2
- package/esm2020/models/filters/type/range/public_api.mjs +0 -2
- package/esm2020/models/filters/type/range/request-base.mjs +0 -2
- package/esm2020/models/filters/type/range/request-option.mjs +0 -2
- package/esm2020/models/filters/type/range/separator.mjs +0 -6
- package/esm2020/models/filters/type/range-numeric/filter.mjs +0 -2
- package/esm2020/models/filters/type/range-numeric/public_api.mjs +0 -2
- package/esm2020/models/filters/type/range-numeric/request.mjs +0 -2
- package/esm2020/models/filters/type/range-numeric/toggle-request.mjs +0 -2
- 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/esm2020/testing/factories/filters/filter.factory.mjs +0 -50
- package/esm2020/testing/factories/filters/public_api.mjs +0 -5
- package/esm2020/testing/factories/filters/request.factory.mjs +0 -27
- package/esm2020/testing/factories/filters/toggle-request.mjs +0 -35
- package/esm2020/testing/factories/filters/type/equal/option.mjs +0 -29
- package/esm2020/testing/factories/filters/type/equal/public_api.mjs +0 -4
- package/esm2020/testing/factories/filters/type/equal/request.mjs +0 -29
- package/esm2020/testing/factories/filters/type/equal/toggle-request.mjs +0 -29
- package/esm2020/testing/factories/filters/type/equal.mjs +0 -30
- package/esm2020/testing/factories/filters/type/public_api.mjs +0 -5
- package/esm2020/testing/factories/filters/type/range-numeric/option.mjs +0 -27
- package/esm2020/testing/factories/filters/type/range-numeric/pair.mjs +0 -37
- package/esm2020/testing/factories/filters/type/range-numeric/public_api.mjs +0 -6
- package/esm2020/testing/factories/filters/type/range-numeric/request-option.mjs +0 -27
- package/esm2020/testing/factories/filters/type/range-numeric/request.mjs +0 -38
- package/esm2020/testing/factories/filters/type/range-numeric/toggle-request.mjs +0 -38
- package/esm2020/testing/factories/filters/type/range-numeric.mjs +0 -32
- package/filters/array-to-dict/array-to-dict.d.ts +0 -6
- package/filters/behaviors/apply/apply-filter.d.ts +0 -8
- package/filters/behaviors/apply/apply-request-to-filters.d.ts +0 -9
- package/filters/behaviors/apply/apply-requests-to-filters.d.ts +0 -9
- package/filters/behaviors/apply/public_api.d.ts +0 -3
- package/filters/behaviors/clear/clear-filter.d.ts +0 -8
- package/filters/behaviors/clear/clear-filters.d.ts +0 -9
- package/filters/behaviors/clear/public_api.d.ts +0 -2
- package/filters/behaviors/remove/public_api.d.ts +0 -3
- package/filters/behaviors/remove/remove-filter.d.ts +0 -9
- package/filters/behaviors/remove/remove-request-from-filters.d.ts +0 -9
- package/filters/behaviors/remove/remove-requests-from-filters.d.ts +0 -10
- package/filters/behaviors/toggle/public_api.d.ts +0 -2
- package/filters/behaviors/toggle/toggle-request-on-filters.d.ts +0 -7
- package/filters/behaviors/toggle/toggle.d.ts +0 -6
- package/filters/compute-applied-filters/compute-applied-filters.d.ts +0 -7
- package/filters/errors/codes.enum.d.ts +0 -11
- package/filters/errors/filter-not-found.error.d.ts +0 -8
- package/filters/errors/map.d.ts +0 -13
- package/filters/errors/public_api.d.ts +0 -4
- package/filters/errors/request-name-mismatch.error.d.ts +0 -9
- package/filters/errors/request-type-mismatch.error.d.ts +0 -9
- package/filters/errors/unknown-filter-type.error.d.ts +0 -9
- package/filters/find-applied/find-applied-options.d.ts +0 -5
- package/filters/find-applied/public_api.d.ts +0 -1
- package/filters/is-applied/is-filter-applied.d.ts +0 -5
- package/filters/is-applied/is-toggle-request-applied-to-filter.d.ts +0 -5
- package/filters/is-applied/public_api.d.ts +0 -2
- package/filters/public_api.d.ts +0 -13
- package/filters/to-request/filter-to-request.d.ts +0 -6
- package/filters/to-request/filters-to-requests.d.ts +0 -7
- package/filters/to-request/public_api.d.ts +0 -2
- package/filters/type/equal/array-to-dict/option.d.ts +0 -6
- package/filters/type/equal/behaviors/apply/apply.d.ts +0 -8
- package/filters/type/equal/behaviors/clear/clear.d.ts +0 -8
- package/filters/type/equal/behaviors/remove/remove.d.ts +0 -11
- package/filters/type/equal/behaviors/toggle/toggle.d.ts +0 -11
- package/filters/type/equal/is-applied/is-applied.d.ts +0 -5
- package/filters/type/equal/is-applied/is-toggle-request-applied-to-filter.d.ts +0 -5
- package/filters/type/equal/public_api.d.ts +0 -1
- package/filters/type/equal/to-request/filter-to-request.d.ts +0 -5
- package/filters/type/range/array-to-dict/pair.d.ts +0 -6
- package/filters/type/range/behaviors/apply/apply.d.ts +0 -8
- package/filters/type/range/behaviors/clear/clear.d.ts +0 -8
- package/filters/type/range/behaviors/remove/remove.d.ts +0 -11
- package/filters/type/range/behaviors/toggle/toggle.d.ts +0 -10
- package/filters/type/range/compute-pair-label.d.ts +0 -1
- package/filters/type/range/is-applied/is-applied.d.ts +0 -5
- package/filters/type/range/is-applied/is-toggle-request-applied-to-filter.d.ts +0 -5
- package/filters/type/range/public_api.d.ts +0 -2
- package/filters/type/range/to-request/filter-to-request.d.ts +0 -5
- package/filters/type/range-numeric/to-request/filter-to-request.d.ts +0 -5
- package/filters/validators/public_api.d.ts +0 -2
- package/filters/validators/request-name-match.d.ts +0 -7
- package/filters/validators/request-type-match.d.ts +0 -7
- package/models/filters/category-filter-base.d.ts +0 -25
- package/models/filters/category-filter-option-base.d.ts +0 -9
- package/models/filters/category-filter-option.d.ts +0 -6
- package/models/filters/category-filter.d.ts +0 -9
- package/models/filters/category-filterable.d.ts +0 -11
- package/models/filters/filter-request.d.ts +0 -7
- package/models/filters/filter-toggle-request.d.ts +0 -6
- package/models/filters/public_api.d.ts +0 -11
- package/models/filters/type/category-filter-type.d.ts +0 -7
- package/models/filters/type/equal/filter.d.ts +0 -25
- package/models/filters/type/equal/option.d.ts +0 -19
- package/models/filters/type/equal/public_api.d.ts +0 -4
- package/models/filters/type/equal/request.d.ts +0 -18
- package/models/filters/type/equal/toggle-request.d.ts +0 -18
- package/models/filters/type/range/filter-base.d.ts +0 -24
- package/models/filters/type/range/option.d.ts +0 -14
- package/models/filters/type/range/pair.d.ts +0 -20
- package/models/filters/type/range/public_api.d.ts +0 -6
- package/models/filters/type/range/request-base.d.ts +0 -20
- package/models/filters/type/range/request-option.d.ts +0 -14
- package/models/filters/type/range/separator.d.ts +0 -5
- package/models/filters/type/range-numeric/filter.d.ts +0 -11
- package/models/filters/type/range-numeric/public_api.d.ts +0 -3
- package/models/filters/type/range-numeric/request.d.ts +0 -11
- package/models/filters/type/range-numeric/toggle-request.d.ts +0 -12
- package/state/reducers/category/pure/build-metadata-from-request.d.ts +0 -2
- package/testing/factories/filters/filter.factory.d.ts +0 -18
- package/testing/factories/filters/public_api.d.ts +0 -4
- package/testing/factories/filters/request.factory.d.ts +0 -15
- package/testing/factories/filters/toggle-request.d.ts +0 -18
- package/testing/factories/filters/type/equal/option.d.ts +0 -17
- package/testing/factories/filters/type/equal/public_api.d.ts +0 -3
- package/testing/factories/filters/type/equal/request.d.ts +0 -16
- package/testing/factories/filters/type/equal/toggle-request.d.ts +0 -16
- package/testing/factories/filters/type/equal.d.ts +0 -17
- package/testing/factories/filters/type/public_api.d.ts +0 -4
- package/testing/factories/filters/type/range-numeric/option.d.ts +0 -15
- package/testing/factories/filters/type/range-numeric/pair.d.ts +0 -23
- package/testing/factories/filters/type/range-numeric/public_api.d.ts +0 -5
- package/testing/factories/filters/type/range-numeric/request-option.d.ts +0 -15
- package/testing/factories/filters/type/range-numeric/request.d.ts +0 -23
- package/testing/factories/filters/type/range-numeric/toggle-request.d.ts +0 -20
- package/testing/factories/filters/type/range-numeric.d.ts +0 -19
@@ -1,18 +1,129 @@
|
|
1
1
|
import * as i0 from '@angular/core';
|
2
2
|
import { Injectable, Inject, NgModule } from '@angular/core';
|
3
|
-
import * as i1 from '@ngrx/store';
|
4
|
-
import { createFeatureSelector, createSelector, defaultMemoize, select, StoreModule } from '@ngrx/store';
|
5
|
-
import { getDaffProductSelectors, DaffProductGridLoadSuccess, DaffProductStateModule } from '@daffodil/product/state';
|
6
|
-
import { createEntityAdapter } from '@ngrx/entity';
|
7
|
-
import { daffToggleRequestOnFilters, daffRemoveRequestsFromFilters, daffClearFilters, daffApplyRequestsToFilters, daffCategoryComputeAppliedFilters, DaffCategoryRequestKind, daffCategoryFiltersToRequests, DAFF_CATEGORY_ERROR_MATCHER } from '@daffodil/category';
|
8
3
|
import * as i1$1 from '@ngrx/effects';
|
9
4
|
import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
|
5
|
+
import * as i1 from '@ngrx/store';
|
6
|
+
import { createFeatureSelector, createSelector, defaultMemoize, select, StoreModule } from '@ngrx/store';
|
7
|
+
import { daffProductCollectionReducerInitialState, getProductCollectionStateAdapter, daffProductCollectionSelectorFactory, getDaffProductSelectors, DaffProductCollectionFacade, DaffProductGridLoadSuccess, DaffProductStateModule } from '@daffodil/product/state';
|
10
8
|
import { asyncScheduler, of } from 'rxjs';
|
11
9
|
import { withLatestFrom, map, throttleTime, switchMap, catchError, mergeMap } from 'rxjs/operators';
|
10
|
+
import { DaffCategoryRequestKind, DAFF_CATEGORY_ERROR_MATCHER } from '@daffodil/category';
|
12
11
|
import { DaffCategoryDriver } from '@daffodil/category/driver';
|
12
|
+
import { daffToggleRequestOnFilters, daffRemoveRequestsFromFilters, daffClearFilters, daffApplyRequestsToFilters, daffProductFiltersToRequests } from '@daffodil/product';
|
13
|
+
import { createEntityAdapter } from '@ngrx/entity';
|
13
14
|
|
14
|
-
|
15
|
-
|
15
|
+
/**
|
16
|
+
* The possible types of category page filter actions.
|
17
|
+
*/
|
18
|
+
var DaffCategoryPageProductCollectionActionTypes;
|
19
|
+
(function (DaffCategoryPageProductCollectionActionTypes) {
|
20
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageChangeFiltersAction"] = "[@daffodil/category] Category Page Change Filters Action";
|
21
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageReplaceFiltersAction"] = "[@daffodil/category] Category Page Replace Filters Action";
|
22
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageApplyFiltersAction"] = "[@daffodil/category] Category Page Apply Filters Action";
|
23
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageRemoveFiltersAction"] = "[@daffodil/category] Category Page Remove Filters Action";
|
24
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageClearFiltersAction"] = "[@daffodil/category] Category Page Clear Filters Action";
|
25
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageToggleFilterAction"] = "[@daffodil/category] Category Page Toggle Filter Action";
|
26
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageChangeSizeAction"] = "[@daffodil/category] Category Page Change Size Action";
|
27
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageChangeCurrentPageAction"] = "[@daffodil/category] Category Page Change Current Page Action";
|
28
|
+
DaffCategoryPageProductCollectionActionTypes["CategoryPageChangeSortingOptionAction"] = "[@daffodil/category] Category Page Change Sorting Option Action";
|
29
|
+
})(DaffCategoryPageProductCollectionActionTypes || (DaffCategoryPageProductCollectionActionTypes = {}));
|
30
|
+
/**
|
31
|
+
* An action for changing the filters for the current category.
|
32
|
+
*
|
33
|
+
* @param filters - Filters to be changed on the current category.
|
34
|
+
* @deprecated use {@link DaffCategoryPageReplaceFilters} or {@link DaffCategoryPageApplyFilters}
|
35
|
+
*/
|
36
|
+
class DaffCategoryPageChangeFilters {
|
37
|
+
constructor(filters) {
|
38
|
+
this.filters = filters;
|
39
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeFiltersAction;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
/**
|
43
|
+
* An action for replacing the filters for the current category.
|
44
|
+
* All existing filters will be removed and the specified filters will be applied.
|
45
|
+
*
|
46
|
+
* @param filters - Filters to be set on the current category.
|
47
|
+
*/
|
48
|
+
class DaffCategoryPageReplaceFilters {
|
49
|
+
constructor(filters) {
|
50
|
+
this.filters = filters;
|
51
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageReplaceFiltersAction;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
/**
|
55
|
+
* An action for applying the specified filters for the current category.
|
56
|
+
*
|
57
|
+
* @param filters - Filters to be applied to the current category.
|
58
|
+
*/
|
59
|
+
class DaffCategoryPageApplyFilters {
|
60
|
+
constructor(filters) {
|
61
|
+
this.filters = filters;
|
62
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageApplyFiltersAction;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
/**
|
66
|
+
* An action for removing the specified filters for the current category.
|
67
|
+
*
|
68
|
+
* @param filters - Filters to be removed from the current category.
|
69
|
+
*/
|
70
|
+
class DaffCategoryPageRemoveFilters {
|
71
|
+
constructor(filters) {
|
72
|
+
this.filters = filters;
|
73
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageRemoveFiltersAction;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
/**
|
77
|
+
* An action for removing all the filters for the current category.
|
78
|
+
*/
|
79
|
+
class DaffCategoryPageClearFilters {
|
80
|
+
constructor() {
|
81
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageClearFiltersAction;
|
82
|
+
}
|
83
|
+
}
|
84
|
+
/**
|
85
|
+
* An action for toggling a filters for the current category.
|
86
|
+
*
|
87
|
+
* @param filter - Filter to be toggled on the current category.
|
88
|
+
*/
|
89
|
+
class DaffCategoryPageToggleFilter {
|
90
|
+
constructor(filter) {
|
91
|
+
this.filter = filter;
|
92
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageToggleFilterAction;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
/**
|
96
|
+
* An action for changing the number of products shown on each page for the selected category.
|
97
|
+
*
|
98
|
+
* @param pageSize - The number of products per page.
|
99
|
+
*/
|
100
|
+
class DaffCategoryPageChangePageSize {
|
101
|
+
constructor(pageSize) {
|
102
|
+
this.pageSize = pageSize;
|
103
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSizeAction;
|
104
|
+
}
|
105
|
+
}
|
106
|
+
/**
|
107
|
+
* An action for changing the current page of products for the selected category.
|
108
|
+
*
|
109
|
+
* @param currentPage - The current page of products for the selected category.
|
110
|
+
*/
|
111
|
+
class DaffCategoryPageChangeCurrentPage {
|
112
|
+
constructor(currentPage) {
|
113
|
+
this.currentPage = currentPage;
|
114
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction;
|
115
|
+
}
|
116
|
+
}
|
117
|
+
/**
|
118
|
+
* An action for changing the sorting option for the selected category.
|
119
|
+
*
|
120
|
+
* @param sort - The sort option to be applied.
|
121
|
+
*/
|
122
|
+
class DaffCategoryPageChangeSortingOption {
|
123
|
+
constructor(sort) {
|
124
|
+
this.sort = sort;
|
125
|
+
this.type = DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction;
|
126
|
+
}
|
16
127
|
}
|
17
128
|
|
18
129
|
/**
|
@@ -24,9 +135,6 @@ var DaffCategoryPageActionTypes;
|
|
24
135
|
DaffCategoryPageActionTypes["CategoryPageLoadByUrlAction"] = "[@daffodil/category] Category Page Load By URL Action";
|
25
136
|
DaffCategoryPageActionTypes["CategoryPageLoadSuccessAction"] = "[@daffodil/category] Category Page Load Success Action";
|
26
137
|
DaffCategoryPageActionTypes["CategoryPageLoadFailureAction"] = "[@daffodil/category] Category Page Load Failure Action";
|
27
|
-
DaffCategoryPageActionTypes["CategoryPageChangeSizeAction"] = "[@daffodil/category] Category Page Change Size Action";
|
28
|
-
DaffCategoryPageActionTypes["CategoryPageChangeCurrentPageAction"] = "[@daffodil/category] Category Page Change Current Page Action";
|
29
|
-
DaffCategoryPageActionTypes["CategoryPageChangeSortingOptionAction"] = "[@daffodil/category] Category Page Change Sorting Option Action";
|
30
138
|
})(DaffCategoryPageActionTypes || (DaffCategoryPageActionTypes = {}));
|
31
139
|
/**
|
32
140
|
* An action triggered to initialize a category page load request.
|
@@ -76,38 +184,9 @@ class DaffCategoryPageLoadFailure {
|
|
76
184
|
this.type = DaffCategoryPageActionTypes.CategoryPageLoadFailureAction;
|
77
185
|
}
|
78
186
|
}
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
* @param pageSize - The number of products per page.
|
83
|
-
*/
|
84
|
-
class DaffCategoryPageChangePageSize {
|
85
|
-
constructor(pageSize) {
|
86
|
-
this.pageSize = pageSize;
|
87
|
-
this.type = DaffCategoryPageActionTypes.CategoryPageChangeSizeAction;
|
88
|
-
}
|
89
|
-
}
|
90
|
-
/**
|
91
|
-
* An action for changing the current page of products for the selected category.
|
92
|
-
*
|
93
|
-
* @param currentPage - The current page of products for the selected category.
|
94
|
-
*/
|
95
|
-
class DaffCategoryPageChangeCurrentPage {
|
96
|
-
constructor(currentPage) {
|
97
|
-
this.currentPage = currentPage;
|
98
|
-
this.type = DaffCategoryPageActionTypes.CategoryPageChangeCurrentPageAction;
|
99
|
-
}
|
100
|
-
}
|
101
|
-
/**
|
102
|
-
* An action for changing the sorting option for the selected category.
|
103
|
-
*
|
104
|
-
* @param sort - The sort option to be applied.
|
105
|
-
*/
|
106
|
-
class DaffCategoryPageChangeSortingOption {
|
107
|
-
constructor(sort) {
|
108
|
-
this.sort = sort;
|
109
|
-
this.type = DaffCategoryPageActionTypes.CategoryPageChangeSortingOptionAction;
|
110
|
-
}
|
187
|
+
|
188
|
+
function daffCategoryEntitiesAdapter() {
|
189
|
+
return createEntityAdapter();
|
111
190
|
}
|
112
191
|
|
113
192
|
/**
|
@@ -169,122 +248,17 @@ function daffCategoryEntitiesReducer(state = daffCategoryEntitiesAdapter().getIn
|
|
169
248
|
}
|
170
249
|
}
|
171
250
|
|
172
|
-
|
173
|
-
* The possible types of category page filter actions.
|
174
|
-
*/
|
175
|
-
var DaffCategoryPageFilterActionTypes;
|
176
|
-
(function (DaffCategoryPageFilterActionTypes) {
|
177
|
-
DaffCategoryPageFilterActionTypes["CategoryPageChangeFiltersAction"] = "[@daffodil/category] Category Page Change Filters Action";
|
178
|
-
DaffCategoryPageFilterActionTypes["CategoryPageReplaceFiltersAction"] = "[@daffodil/category] Category Page Replace Filters Action";
|
179
|
-
DaffCategoryPageFilterActionTypes["CategoryPageApplyFiltersAction"] = "[@daffodil/category] Category Page Apply Filters Action";
|
180
|
-
DaffCategoryPageFilterActionTypes["CategoryPageRemoveFiltersAction"] = "[@daffodil/category] Category Page Remove Filters Action";
|
181
|
-
DaffCategoryPageFilterActionTypes["CategoryPageClearFiltersAction"] = "[@daffodil/category] Category Page Clear Filters Action";
|
182
|
-
DaffCategoryPageFilterActionTypes["CategoryPageToggleFilterAction"] = "[@daffodil/category] Category Page Toggle Filter Action";
|
183
|
-
})(DaffCategoryPageFilterActionTypes || (DaffCategoryPageFilterActionTypes = {}));
|
184
|
-
/**
|
185
|
-
* An action for changing the filters for the current category.
|
186
|
-
*
|
187
|
-
* @param filters - Filters to be changed on the current category.
|
188
|
-
* @deprecated use {@link DaffCategoryPageReplaceFilters} or {@link DaffCategoryPageApplyFilters}
|
189
|
-
*/
|
190
|
-
class DaffCategoryPageChangeFilters {
|
191
|
-
constructor(filters) {
|
192
|
-
this.filters = filters;
|
193
|
-
this.type = DaffCategoryPageFilterActionTypes.CategoryPageChangeFiltersAction;
|
194
|
-
}
|
195
|
-
}
|
196
|
-
/**
|
197
|
-
* An action for replacing the filters for the current category.
|
198
|
-
* All existing filters will be removed and the specified filters will be applied.
|
199
|
-
*
|
200
|
-
* @param filters - Filters to be set on the current category.
|
201
|
-
*/
|
202
|
-
class DaffCategoryPageReplaceFilters {
|
203
|
-
constructor(filters) {
|
204
|
-
this.filters = filters;
|
205
|
-
this.type = DaffCategoryPageFilterActionTypes.CategoryPageReplaceFiltersAction;
|
206
|
-
}
|
207
|
-
}
|
208
|
-
/**
|
209
|
-
* An action for applying the specified filters for the current category.
|
210
|
-
*
|
211
|
-
* @param filters - Filters to be applied to the current category.
|
212
|
-
*/
|
213
|
-
class DaffCategoryPageApplyFilters {
|
214
|
-
constructor(filters) {
|
215
|
-
this.filters = filters;
|
216
|
-
this.type = DaffCategoryPageFilterActionTypes.CategoryPageApplyFiltersAction;
|
217
|
-
}
|
218
|
-
}
|
219
|
-
/**
|
220
|
-
* An action for removing the specified filters for the current category.
|
221
|
-
*
|
222
|
-
* @param filters - Filters to be removed from the current category.
|
223
|
-
*/
|
224
|
-
class DaffCategoryPageRemoveFilters {
|
225
|
-
constructor(filters) {
|
226
|
-
this.filters = filters;
|
227
|
-
this.type = DaffCategoryPageFilterActionTypes.CategoryPageRemoveFiltersAction;
|
228
|
-
}
|
229
|
-
}
|
230
|
-
/**
|
231
|
-
* An action for removing all the filters for the current category.
|
232
|
-
*/
|
233
|
-
class DaffCategoryPageClearFilters {
|
234
|
-
constructor() {
|
235
|
-
this.type = DaffCategoryPageFilterActionTypes.CategoryPageClearFiltersAction;
|
236
|
-
}
|
237
|
-
}
|
238
|
-
/**
|
239
|
-
* An action for toggling a filters for the current category.
|
240
|
-
*
|
241
|
-
* @param filter - Filter to be toggled on the current category.
|
242
|
-
*/
|
243
|
-
class DaffCategoryPageToggleFilter {
|
244
|
-
constructor(filter) {
|
245
|
-
this.filter = filter;
|
246
|
-
this.type = DaffCategoryPageFilterActionTypes.CategoryPageToggleFilterAction;
|
247
|
-
}
|
248
|
-
}
|
249
|
-
|
250
|
-
const allowedMetadataKeys = [
|
251
|
-
'applied_sort_option',
|
252
|
-
'applied_sort_direction',
|
253
|
-
'current_page',
|
254
|
-
'page_size',
|
255
|
-
];
|
256
|
-
const buildMetadataFromRequest = (request) => allowedMetadataKeys.reduce((acc, key) => {
|
257
|
-
if (request[key]) {
|
258
|
-
acc[key] = request[key];
|
259
|
-
}
|
260
|
-
return acc;
|
261
|
-
}, {});
|
262
|
-
|
263
|
-
const initialState = {
|
264
|
-
categoryPageMetadata: {
|
265
|
-
id: null,
|
266
|
-
applied_sort_option: null,
|
267
|
-
applied_sort_direction: null,
|
268
|
-
current_page: null,
|
269
|
-
page_size: null,
|
270
|
-
total_pages: null,
|
271
|
-
filters: {},
|
272
|
-
sort_options: {
|
273
|
-
default: null,
|
274
|
-
options: [],
|
275
|
-
},
|
276
|
-
total_products: null,
|
277
|
-
product_ids: [],
|
278
|
-
},
|
251
|
+
const initialState$1 = {
|
279
252
|
daffState: "Stable" /* Stable */,
|
280
253
|
categoryLoading: false,
|
281
254
|
productsLoading: false,
|
282
255
|
errors: [],
|
256
|
+
id: null,
|
283
257
|
};
|
284
258
|
/**
|
285
259
|
* Returns the state for category data except for category entities.
|
286
260
|
*/
|
287
|
-
function daffCategoryReducer(state = initialState, action) {
|
261
|
+
function daffCategoryReducer(state = initialState$1, action) {
|
288
262
|
switch (action.type) {
|
289
263
|
case DaffCategoryPageActionTypes.CategoryPageLoadAction:
|
290
264
|
case DaffCategoryPageActionTypes.CategoryPageLoadByUrlAction:
|
@@ -293,93 +267,21 @@ function daffCategoryReducer(state = initialState, action) {
|
|
293
267
|
categoryLoading: true,
|
294
268
|
productsLoading: true,
|
295
269
|
daffState: "Resolving" /* Resolving */,
|
296
|
-
|
297
|
-
...initialState.categoryPageMetadata,
|
298
|
-
...buildMetadataFromRequest(action.request),
|
299
|
-
id: null,
|
300
|
-
},
|
301
|
-
};
|
302
|
-
case DaffCategoryPageActionTypes.CategoryPageChangeSizeAction:
|
303
|
-
return {
|
304
|
-
...state,
|
305
|
-
productsLoading: true,
|
306
|
-
daffState: "Mutating" /* Mutating */,
|
307
|
-
categoryPageMetadata: {
|
308
|
-
...state.categoryPageMetadata,
|
309
|
-
page_size: action.pageSize,
|
310
|
-
},
|
311
|
-
};
|
312
|
-
case DaffCategoryPageActionTypes.CategoryPageChangeCurrentPageAction:
|
313
|
-
return {
|
314
|
-
...state,
|
315
|
-
productsLoading: true,
|
316
|
-
daffState: "Mutating" /* Mutating */,
|
317
|
-
categoryPageMetadata: {
|
318
|
-
...state.categoryPageMetadata,
|
319
|
-
current_page: action.currentPage,
|
320
|
-
},
|
321
|
-
};
|
322
|
-
case DaffCategoryPageActionTypes.CategoryPageChangeSortingOptionAction:
|
323
|
-
return {
|
324
|
-
...state,
|
325
|
-
productsLoading: true,
|
326
|
-
daffState: "Mutating" /* Mutating */,
|
327
|
-
categoryPageMetadata: {
|
328
|
-
...state.categoryPageMetadata,
|
329
|
-
applied_sort_option: action.sort.option,
|
330
|
-
applied_sort_direction: action.sort.direction,
|
331
|
-
},
|
332
|
-
};
|
333
|
-
case DaffCategoryPageFilterActionTypes.CategoryPageChangeFiltersAction:
|
334
|
-
case DaffCategoryPageFilterActionTypes.CategoryPageReplaceFiltersAction:
|
335
|
-
return {
|
336
|
-
...state,
|
337
|
-
productsLoading: true,
|
338
|
-
daffState: "Mutating" /* Mutating */,
|
339
|
-
categoryPageMetadata: {
|
340
|
-
...state.categoryPageMetadata,
|
341
|
-
filters: daffApplyRequestsToFilters(action.filters, daffClearFilters(state.categoryPageMetadata.filters)),
|
342
|
-
},
|
343
|
-
};
|
344
|
-
case DaffCategoryPageFilterActionTypes.CategoryPageApplyFiltersAction:
|
345
|
-
return {
|
346
|
-
...state,
|
347
|
-
productsLoading: true,
|
348
|
-
daffState: "Mutating" /* Mutating */,
|
349
|
-
categoryPageMetadata: {
|
350
|
-
...state.categoryPageMetadata,
|
351
|
-
filters: daffApplyRequestsToFilters(action.filters, state.categoryPageMetadata.filters),
|
352
|
-
},
|
353
|
-
};
|
354
|
-
case DaffCategoryPageFilterActionTypes.CategoryPageClearFiltersAction:
|
355
|
-
return {
|
356
|
-
...state,
|
357
|
-
productsLoading: true,
|
358
|
-
daffState: "Mutating" /* Mutating */,
|
359
|
-
categoryPageMetadata: {
|
360
|
-
...state.categoryPageMetadata,
|
361
|
-
filters: daffClearFilters(state.categoryPageMetadata.filters),
|
362
|
-
},
|
363
|
-
};
|
364
|
-
case DaffCategoryPageFilterActionTypes.CategoryPageRemoveFiltersAction:
|
365
|
-
return {
|
366
|
-
...state,
|
367
|
-
productsLoading: true,
|
368
|
-
daffState: "Mutating" /* Mutating */,
|
369
|
-
categoryPageMetadata: {
|
370
|
-
...state.categoryPageMetadata,
|
371
|
-
filters: daffRemoveRequestsFromFilters(action.filters, state.categoryPageMetadata.filters),
|
372
|
-
},
|
270
|
+
id: null,
|
373
271
|
};
|
374
|
-
case
|
272
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSizeAction:
|
273
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction:
|
274
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction:
|
275
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeFiltersAction:
|
276
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageReplaceFiltersAction:
|
277
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageApplyFiltersAction:
|
278
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageClearFiltersAction:
|
279
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageRemoveFiltersAction:
|
280
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageToggleFilterAction:
|
375
281
|
return {
|
376
282
|
...state,
|
377
283
|
productsLoading: true,
|
378
284
|
daffState: "Mutating" /* Mutating */,
|
379
|
-
categoryPageMetadata: {
|
380
|
-
...state.categoryPageMetadata,
|
381
|
-
filters: daffToggleRequestOnFilters(action.filter, state.categoryPageMetadata.filters),
|
382
|
-
},
|
383
285
|
};
|
384
286
|
case DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction:
|
385
287
|
return {
|
@@ -387,18 +289,7 @@ function daffCategoryReducer(state = initialState, action) {
|
|
387
289
|
categoryLoading: false,
|
388
290
|
productsLoading: false,
|
389
291
|
daffState: "Stable" /* Stable */,
|
390
|
-
|
391
|
-
...state.categoryPageMetadata,
|
392
|
-
id: action.response.categoryPageMetadata.id,
|
393
|
-
current_page: action.response.categoryPageMetadata.current_page,
|
394
|
-
page_size: action.response.categoryPageMetadata.page_size,
|
395
|
-
filters: action.response.categoryPageMetadata.filters,
|
396
|
-
sort_options: action.response.categoryPageMetadata.sort_options,
|
397
|
-
total_pages: action.response.categoryPageMetadata.total_pages,
|
398
|
-
total_products: action.response.categoryPageMetadata.total_products,
|
399
|
-
product_ids: action.response.categoryPageMetadata.product_ids,
|
400
|
-
applied_sort_option: state.categoryPageMetadata.applied_sort_option || action.response.categoryPageMetadata.sort_options.default,
|
401
|
-
},
|
292
|
+
id: action.response.category.id,
|
402
293
|
};
|
403
294
|
case DaffCategoryPageActionTypes.CategoryPageLoadFailureAction:
|
404
295
|
return {
|
@@ -413,12 +304,66 @@ function daffCategoryReducer(state = initialState, action) {
|
|
413
304
|
}
|
414
305
|
}
|
415
306
|
|
307
|
+
const initialState = {
|
308
|
+
...daffProductCollectionReducerInitialState,
|
309
|
+
id: null,
|
310
|
+
};
|
311
|
+
/**
|
312
|
+
* Returns the state for category data except for category entities.
|
313
|
+
*/
|
314
|
+
function daffCategoryPageMetadataReducer(state = initialState, action) {
|
315
|
+
const adapter = getProductCollectionStateAdapter();
|
316
|
+
switch (action.type) {
|
317
|
+
case DaffCategoryPageActionTypes.CategoryPageLoadAction:
|
318
|
+
case DaffCategoryPageActionTypes.CategoryPageLoadByUrlAction:
|
319
|
+
return {
|
320
|
+
...adapter.storeRequest(action.request, initialState),
|
321
|
+
id: null,
|
322
|
+
};
|
323
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSizeAction:
|
324
|
+
return adapter.setPageSize(action.pageSize, state);
|
325
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction:
|
326
|
+
return adapter.setCurrentPage(action.currentPage, state);
|
327
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction:
|
328
|
+
return adapter.setSort(action.sort.option, action.sort.direction, state);
|
329
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeFiltersAction:
|
330
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageReplaceFiltersAction:
|
331
|
+
return adapter.setFilters(daffApplyRequestsToFilters(action.filters, daffClearFilters(state.filters)), state);
|
332
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageApplyFiltersAction:
|
333
|
+
return adapter.setFilters(daffApplyRequestsToFilters(action.filters, state.filters), state);
|
334
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageClearFiltersAction:
|
335
|
+
return adapter.setFilters(daffClearFilters(state.filters), state);
|
336
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageRemoveFiltersAction:
|
337
|
+
return adapter.setFilters(daffRemoveRequestsFromFilters(action.filters, state.filters), state);
|
338
|
+
case DaffCategoryPageProductCollectionActionTypes.CategoryPageToggleFilterAction:
|
339
|
+
return adapter.setFilters(daffToggleRequestOnFilters(action.filter, state.filters), state);
|
340
|
+
case DaffCategoryPageActionTypes.CategoryPageLoadSuccessAction:
|
341
|
+
return {
|
342
|
+
...adapter.setMetadata({
|
343
|
+
currentPage: action.response.categoryPageMetadata.currentPage,
|
344
|
+
pageSize: action.response.categoryPageMetadata.pageSize,
|
345
|
+
filters: action.response.categoryPageMetadata.filters,
|
346
|
+
sortOptions: action.response.categoryPageMetadata.sortOptions,
|
347
|
+
totalPages: action.response.categoryPageMetadata.totalPages,
|
348
|
+
count: action.response.categoryPageMetadata.count,
|
349
|
+
ids: action.response.categoryPageMetadata.ids,
|
350
|
+
appliedSortOption: action.response.categoryPageMetadata.appliedSortOption || action.response.categoryPageMetadata.sortOptions.default,
|
351
|
+
appliedSortDirection: action.response.categoryPageMetadata.appliedSortDirection,
|
352
|
+
}, state),
|
353
|
+
id: action.response.categoryPageMetadata.id,
|
354
|
+
};
|
355
|
+
default:
|
356
|
+
return state;
|
357
|
+
}
|
358
|
+
}
|
359
|
+
|
416
360
|
/**
|
417
361
|
* All daffodil defined category reducers.
|
418
362
|
*/
|
419
363
|
const daffCategoryReducers = {
|
420
364
|
category: daffCategoryReducer,
|
421
365
|
categoryEntities: daffCategoryEntitiesReducer,
|
366
|
+
pageMetadata: daffCategoryPageMetadataReducer,
|
422
367
|
};
|
423
368
|
|
424
369
|
/**
|
@@ -465,20 +410,11 @@ const getDaffCategoryEntitiesSelectors = (() => {
|
|
465
410
|
const createCategoryPageSelectors = () => {
|
466
411
|
const selectCategoryFeatureState = getDaffCategoryFeatureSelector().selectCategoryFeatureState;
|
467
412
|
const selectCategoryState = createSelector(selectCategoryFeatureState, (state) => state.category);
|
468
|
-
const selectCategoryPageMetadata = createSelector(
|
469
|
-
const
|
470
|
-
const selectCategoryTotalPages = createSelector(selectCategoryPageMetadata, (state) => state.total_pages);
|
471
|
-
const selectCategoryPageSize = createSelector(selectCategoryPageMetadata, (state) => state.page_size);
|
472
|
-
const selectCategoryFilters = createSelector(selectCategoryPageMetadata, (state) => state.filters);
|
473
|
-
const selectCategorySortOptions = createSelector(selectCategoryPageMetadata, (state) => state.sort_options.options);
|
474
|
-
const selectCategoryPageProductIds = createSelector(selectCategoryPageMetadata, (state) => state.product_ids);
|
413
|
+
const selectCategoryPageMetadata = createSelector(selectCategoryFeatureState, (state) => state.pageMetadata);
|
414
|
+
const selectCategoryPageProductIds = createSelector(selectCategoryPageMetadata, (state) => state.ids);
|
475
415
|
const selectIsCategoryPageEmpty = createSelector(selectCategoryPageProductIds, (state) => !state.length);
|
476
|
-
const selectCategoryPageTotalProducts = createSelector(selectCategoryPageMetadata, (state) => state.total_products);
|
477
|
-
const selectCategoryPageAppliedFilters = createSelector(selectCategoryFilters, (filters) => daffCategoryComputeAppliedFilters(filters));
|
478
|
-
const selectCategoryPageAppliedSortOption = createSelector(selectCategoryPageMetadata, (state) => state.applied_sort_option);
|
479
|
-
const selectCategoryPageAppliedSortDirection = createSelector(selectCategoryPageMetadata, (state) => state.applied_sort_direction);
|
480
416
|
const selectCategoryPageState = createSelector(selectCategoryState, (state) => state.daffState);
|
481
|
-
const selectCurrentCategoryId = createSelector(
|
417
|
+
const selectCurrentCategoryId = createSelector(selectCategoryState, (state) => state.id);
|
482
418
|
const selectCategoryLoading = createSelector(selectCategoryState, (state) => state.categoryLoading);
|
483
419
|
const selectCategoryProductsLoading = createSelector(selectCategoryState, (state) => state.productsLoading);
|
484
420
|
const selectCategoryErrors = createSelector(selectCategoryState, (state) => state.errors);
|
@@ -486,18 +422,8 @@ const createCategoryPageSelectors = () => {
|
|
486
422
|
const selectIsCategoryPageResolving = createSelector(selectCategoryPageState, (daffState) => daffState === "Resolving" /* Resolving */);
|
487
423
|
return {
|
488
424
|
selectCategoryState,
|
489
|
-
selectCategoryPageMetadata,
|
490
|
-
selectCategoryCurrentPage,
|
491
|
-
selectCategoryTotalPages,
|
492
|
-
selectCategoryPageSize,
|
493
|
-
selectCategoryFilters,
|
494
|
-
selectCategorySortOptions,
|
495
425
|
selectCategoryPageProductIds,
|
496
426
|
selectIsCategoryPageEmpty,
|
497
|
-
selectCategoryPageTotalProducts,
|
498
|
-
selectCategoryPageAppliedFilters,
|
499
|
-
selectCategoryPageAppliedSortOption,
|
500
|
-
selectCategoryPageAppliedSortDirection,
|
501
427
|
selectCategoryPageState,
|
502
428
|
selectCurrentCategoryId,
|
503
429
|
selectCategoryLoading,
|
@@ -518,6 +444,13 @@ const getDaffCategoryPageSelectors = (() => {
|
|
518
444
|
: createCategoryPageSelectors();
|
519
445
|
})();
|
520
446
|
|
447
|
+
const { selectCategoryFeatureState, } = getDaffCategoryFeatureSelector();
|
448
|
+
const selectCategoryProductCollectionState = createSelector(selectCategoryFeatureState, state => state.pageMetadata);
|
449
|
+
const getCategoryProductCollectionSelectors = (() => {
|
450
|
+
let cache;
|
451
|
+
return () => cache = cache || daffProductCollectionSelectorFactory(selectCategoryProductCollectionState);
|
452
|
+
})();
|
453
|
+
|
521
454
|
const createCategorySelectors = () => {
|
522
455
|
const { selectAllProducts, selectProductEntities } = getDaffProductSelectors();
|
523
456
|
const { selectCategoryEntities, } = getDaffCategoryEntitiesSelectors();
|
@@ -536,6 +469,7 @@ const createCategorySelectors = () => {
|
|
536
469
|
...getDaffCategoryFeatureSelector(),
|
537
470
|
...getDaffCategoryEntitiesSelectors(),
|
538
471
|
...getDaffCategoryPageSelectors(),
|
472
|
+
...getCategoryProductCollectionSelectors(),
|
539
473
|
selectCurrentCategory,
|
540
474
|
selectCategoryPageProducts,
|
541
475
|
selectCategory,
|
@@ -565,19 +499,9 @@ class DaffCategoryFacade {
|
|
565
499
|
this.categorySelectors = getDaffCategorySelectors();
|
566
500
|
this.category$ = this.store.pipe(select(this.categorySelectors.selectCurrentCategory));
|
567
501
|
this.products$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageProducts));
|
568
|
-
this.totalProducts$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageTotalProducts));
|
569
|
-
this.metadata$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageMetadata));
|
570
502
|
this.pageLoadingState$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageState));
|
571
503
|
this.isPageMutating$ = this.store.pipe(select(this.categorySelectors.selectIsCategoryPageMutating));
|
572
504
|
this.isPageResolving$ = this.store.pipe(select(this.categorySelectors.selectIsCategoryPageResolving));
|
573
|
-
this.currentPage$ = this.store.pipe(select(this.categorySelectors.selectCategoryCurrentPage));
|
574
|
-
this.totalPages$ = this.store.pipe(select(this.categorySelectors.selectCategoryTotalPages));
|
575
|
-
this.pageSize$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageSize));
|
576
|
-
this.filters$ = this.store.pipe(select(this.categorySelectors.selectCategoryFilters));
|
577
|
-
this.sortOptions$ = this.store.pipe(select(this.categorySelectors.selectCategorySortOptions));
|
578
|
-
this.appliedFilters$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageAppliedFilters));
|
579
|
-
this.appliedSortOption$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageAppliedSortOption));
|
580
|
-
this.appliedSortDirection$ = this.store.pipe(select(this.categorySelectors.selectCategoryPageAppliedSortDirection));
|
581
505
|
this.categoryLoading$ = this.store.pipe(select(this.categorySelectors.selectCategoryLoading));
|
582
506
|
this.productsLoading$ = this.store.pipe(select(this.categorySelectors.selectCategoryProductsLoading));
|
583
507
|
this.errors$ = this.store.pipe(select(this.categorySelectors.selectCategoryErrors));
|
@@ -610,6 +534,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
|
|
610
534
|
}]
|
611
535
|
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
612
536
|
|
537
|
+
class DaffCategoryProductCollectionFacade extends DaffProductCollectionFacade {
|
538
|
+
constructor(store) {
|
539
|
+
super(store, getCategoryProductCollectionSelectors());
|
540
|
+
}
|
541
|
+
}
|
542
|
+
/** @nocollapse */ /** @nocollapse */ DaffCategoryProductCollectionFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryProductCollectionFacade, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
543
|
+
/** @nocollapse */ /** @nocollapse */ DaffCategoryProductCollectionFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryProductCollectionFacade, providedIn: 'root' });
|
544
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryProductCollectionFacade, decorators: [{
|
545
|
+
type: Injectable,
|
546
|
+
args: [{
|
547
|
+
providedIn: 'root',
|
548
|
+
}]
|
549
|
+
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
550
|
+
|
613
551
|
class DaffCategoryPageFilterEffects {
|
614
552
|
constructor(actions$, driver, errorMatcher, facade) {
|
615
553
|
this.actions$ = actions$;
|
@@ -624,21 +562,21 @@ class DaffCategoryPageFilterEffects {
|
|
624
562
|
* @param throttleWindow the amount of time to delay when apply/removing filters
|
625
563
|
* in a sequence.
|
626
564
|
*/
|
627
|
-
this.updateFilters$ = createEffect(() => (throttleWindow = 300, scheduler = asyncScheduler) => this.actions$.pipe(ofType(
|
565
|
+
this.updateFilters$ = createEffect(() => (throttleWindow = 300, scheduler = asyncScheduler) => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageReplaceFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageApplyFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageClearFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageRemoveFiltersAction, DaffCategoryPageProductCollectionActionTypes.CategoryPageToggleFilterAction), withLatestFrom(this.facade.metadata$), map(([action, metadata]) => ({
|
628
566
|
kind: DaffCategoryRequestKind.ID,
|
629
567
|
id: metadata.id,
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
568
|
+
filterRequests: daffProductFiltersToRequests(metadata.filters),
|
569
|
+
appliedSortOption: metadata.appliedSortOption,
|
570
|
+
appliedSortDirection: metadata.appliedSortDirection,
|
571
|
+
currentPage: metadata.currentPage,
|
572
|
+
pageSize: metadata.pageSize,
|
635
573
|
})), throttleTime(throttleWindow, scheduler, { leading: true, trailing: true }), switchMap(payload => this.driver.get(payload).pipe(switchMap((resp) => [
|
636
574
|
new DaffProductGridLoadSuccess(resp.products),
|
637
575
|
new DaffCategoryPageLoadSuccess(resp),
|
638
576
|
]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
|
639
577
|
}
|
640
578
|
}
|
641
|
-
/** @nocollapse */ /** @nocollapse */ DaffCategoryPageFilterEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageFilterEffects, deps: [{ token: i1$1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }, { token:
|
579
|
+
/** @nocollapse */ /** @nocollapse */ DaffCategoryPageFilterEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageFilterEffects, deps: [{ token: i1$1.Actions }, { token: DaffCategoryDriver }, { token: DAFF_CATEGORY_ERROR_MATCHER }, { token: DaffCategoryProductCollectionFacade }], target: i0.ɵɵFactoryTarget.Injectable });
|
642
580
|
/** @nocollapse */ /** @nocollapse */ DaffCategoryPageFilterEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageFilterEffects });
|
643
581
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCategoryPageFilterEffects, decorators: [{
|
644
582
|
type: Injectable
|
@@ -648,7 +586,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
|
|
648
586
|
}] }, { type: undefined, decorators: [{
|
649
587
|
type: Inject,
|
650
588
|
args: [DAFF_CATEGORY_ERROR_MATCHER]
|
651
|
-
}] }, { type:
|
589
|
+
}] }, { type: DaffCategoryProductCollectionFacade }]; } });
|
652
590
|
|
653
591
|
class DaffCategoryPageEffects {
|
654
592
|
constructor(actions$, driver, errorMatcher, store) {
|
@@ -662,24 +600,24 @@ class DaffCategoryPageEffects {
|
|
662
600
|
new DaffProductGridLoadSuccess(resp.products),
|
663
601
|
new DaffCategoryPageLoadSuccess(resp),
|
664
602
|
]), catchError((error) => of(new DaffCategoryPageLoadFailure(this.errorMatcher(error))))))));
|
665
|
-
this.changeCategoryPageSize$ = createEffect(() => this.actions$.pipe(ofType(
|
603
|
+
this.changeCategoryPageSize$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSizeAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
|
666
604
|
...metadata,
|
667
605
|
kind: DaffCategoryRequestKind.ID,
|
668
|
-
|
669
|
-
|
606
|
+
filterRequests: daffProductFiltersToRequests(metadata.filters),
|
607
|
+
pageSize: action.pageSize,
|
670
608
|
}))));
|
671
|
-
this.changeCategoryCurrentPage$ = createEffect(() => this.actions$.pipe(ofType(
|
609
|
+
this.changeCategoryCurrentPage$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeCurrentPageAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
|
672
610
|
...metadata,
|
673
611
|
kind: DaffCategoryRequestKind.ID,
|
674
|
-
|
675
|
-
|
612
|
+
filterRequests: daffProductFiltersToRequests(metadata.filters),
|
613
|
+
currentPage: action.currentPage,
|
676
614
|
}))));
|
677
|
-
this.changeCategorySort$ = createEffect(() => this.actions$.pipe(ofType(
|
615
|
+
this.changeCategorySort$ = createEffect(() => this.actions$.pipe(ofType(DaffCategoryPageProductCollectionActionTypes.CategoryPageChangeSortingOptionAction), withLatestFrom(this.store.pipe(select(this.categorySelectors.selectCollectionMetadata))), switchMap(([action, metadata]) => this.processCategoryGetRequest({
|
678
616
|
...metadata,
|
679
617
|
kind: DaffCategoryRequestKind.ID,
|
680
|
-
|
681
|
-
|
682
|
-
|
618
|
+
filterRequests: daffProductFiltersToRequests(metadata.filters),
|
619
|
+
appliedSortOption: action.sort.option,
|
620
|
+
appliedSortDirection: action.sort.direction,
|
683
621
|
}))));
|
684
622
|
}
|
685
623
|
processCategoryGetRequest(payload) {
|
@@ -748,5 +686,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
|
|
748
686
|
* Generated bundle index. Do not edit.
|
749
687
|
*/
|
750
688
|
|
751
|
-
export { DAFF_CATEGORY_STORE_FEATURE_KEY, DaffCategoryActionTypes, DaffCategoryFacade, DaffCategoryLoad, DaffCategoryLoadFailure, DaffCategoryLoadSuccess, DaffCategoryPageActionTypes, DaffCategoryPageApplyFilters, DaffCategoryPageChangeCurrentPage, DaffCategoryPageChangeFilters, DaffCategoryPageChangePageSize, DaffCategoryPageChangeSortingOption, DaffCategoryPageClearFilters,
|
689
|
+
export { DAFF_CATEGORY_STORE_FEATURE_KEY, DaffCategoryActionTypes, DaffCategoryFacade, DaffCategoryLoad, DaffCategoryLoadFailure, DaffCategoryLoadSuccess, DaffCategoryPageActionTypes, DaffCategoryPageApplyFilters, DaffCategoryPageChangeCurrentPage, DaffCategoryPageChangeFilters, DaffCategoryPageChangePageSize, DaffCategoryPageChangeSortingOption, DaffCategoryPageClearFilters, DaffCategoryPageLoad, DaffCategoryPageLoadByUrl, DaffCategoryPageLoadFailure, DaffCategoryPageLoadSuccess, DaffCategoryPageProductCollectionActionTypes, DaffCategoryPageRemoveFilters, DaffCategoryPageReplaceFilters, DaffCategoryPageToggleFilter, DaffCategoryProductCollectionFacade, DaffCategoryStateModule, daffCategoryEntitiesReducer, daffCategoryPageMetadataReducer, daffCategoryReducer, daffCategoryReducers, getDaffCategorySelectors };
|
752
690
|
//# sourceMappingURL=daffodil-category-state.mjs.map
|