DaffCategoryFacade
A facade for interacting with the category state. This facade exposes many parts of the state for easy access and allows dispatching of actions.
import { DaffCategoryFacade } from '@daffodil/category/state'
@Injectable()
class DaffCategoryFacade<<V extends DaffGenericCategory<V> = DaffCategory, W extends DaffProduct = DaffProduct>> implements DaffCategoryFacadeInterface<V, W> {
category$: Observable<V>
loadingState$: Observable<DaffCategoryReducerState['daffState']>
loading$: Observable<boolean>
mutating$: Observable<boolean>
resolving$: Observable<boolean>
products$: Observable<W[]>
errors$: Observable<DaffStateError[]>
hasErrors$: Observable<boolean>
isCategoryEmpty$: Observable<boolean>
getCategoryById(id: V["id"]): Observable<V>
getProductsByCategory(categoryId: V["id"]): Observable<W[]>
getTotalProductsByCategory(categoryId: V["id"]): Observable<number>
dispatch(action: Action<string>)
}
Properties
Name | Type | Description |
---|---|---|
category$ | Observable<V> | The currently selected category. |
loadingState$ | Observable<DaffCategoryReducerState['daffState']> | |
loading$ | Observable<boolean> | |
mutating$ | Observable<boolean> | |
resolving$ | Observable<boolean> | |
products$ | Observable<W[]> | Products of the current category. |
errors$ | Observable<DaffStateError[]> | |
hasErrors$ | Observable<boolean> | |
isCategoryEmpty$ | Observable<boolean> | Is the category page empty of products. |
getCategoryById | Observable<V> | Get a category by the provided Id. |
getProductsByCategory | Observable<W[]> | Get products by a category Id. |
getTotalProductsByCategory | Observable<number> | Get products by a category Id. |
dispatch | Dispatches the given action. |