DaffProductFacade
A facade for getting state about a particular product.
import { DaffProductFacade } from '@daffodil/product/state'
@Injectable()
class DaffProductFacade<<T extends DaffProduct = DaffProduct>> implements DaffProductFacadeInterface<T> {
getProduct(id: T["id"]): Observable<T>
getPrice(id: T["id"]): Observable<number>
hasDiscount(id: T["id"]): Observable<boolean>
getDiscountAmount(id: T["id"]): Observable<number>
getDiscountedPrice(id: T["id"]): Observable<number>
getDiscountPercent(id: T["id"]): Observable<number>
isOutOfStock(id: T["id"]): Observable<boolean>
dispatch(action: Action<string>)
}
Properties
Name | Type | Description |
---|---|---|
getProduct | Observable<T> | Get a product. |
getPrice | Observable<number> | Get the original price for a product. |
hasDiscount | Observable<boolean> | Whether a particular product has a discount. |
getDiscountAmount | Observable<number> | Get the discount amount of a product. |
getDiscountedPrice | Observable<number> | Get the discounted price for a product. |
getDiscountPercent | Observable<number> | Get the discount percent of a product. |
isOutOfStock | Observable<boolean> | Whether a product is out of stock. |
dispatch |