import { DaffCategoryMemoizedSelectors } from '@daffodil/category/state'
An interface for selectors that combine category metadata and category entities selectors.
interface DaffCategoryMemoizedSelectors<V extends DaffGenericCategory<V> = DaffCategory, W extends DaffProduct = DaffProduct> {
selectCurrentCategory: MemoizedSelector<DaffCategoryStateRootSlice<V, DaffProduct>, V, DefaultProjectorFn<V>>
selectCategoryPageProducts: MemoizedSelector<DaffCategoryStateRootSlice<V, W>, W[], DefaultProjectorFn<W[]>>
selectCategory: (categoryId: V["id"]) => MemoizedSelector<DaffCategoryStateRootSlice<V, DaffProduct>, V, DefaultProjectorFn<V>>
selectProductsByCategory: (categoryId: V["id"]) => MemoizedSelector<DaffCategoryStateRootSlice<V, W>, W[], DefaultProjectorFn<W[]>>
selectTotalProductsByCategory: (categoryId: V["id"]) => MemoizedSelector<DaffCategoryStateRootSlice<V, DaffProduct>, number, DefaultProjectorFn<number>>
}
selectCurrentCategory MemoizedSelector<DaffCategoryStateRootSlice<V, DaffProduct>, V, DefaultProjectorFn<V>> |
---|
Selects the current category |
selectCategoryPageProducts MemoizedSelector<DaffCategoryStateRootSlice<V, W>, W[], DefaultProjectorFn<W[]>> |
---|
Selects the products of the current category. |
selectCategory (categoryId: V["id"]) => MemoizedSelector<DaffCategoryStateRootSlice<V, DaffProduct>, V, DefaultProjectorFn<V>> |
---|
Selects a category by id. |
selectProductsByCategory (categoryId: V["id"]) => MemoizedSelector<DaffCategoryStateRootSlice<V, W>, W[], DefaultProjectorFn<W[]>> |
---|
Selects products by category id. |
selectTotalProductsByCategory (categoryId: V["id"]) => MemoizedSelector<DaffCategoryStateRootSlice<V, DaffProduct>, number, DefaultProjectorFn<number>> |
---|
Selects the total number of products in a category. |