import { MockDaffCompositeProductFacade } from '@daffodil/product-composite/state/testing'
@Injectable()
class MockDaffCompositeProductFacade implements DaffCompositeProductFacadeInterface {
getRequiredItemPricesForConfiguration(
id: string
configuration?: Dictionary<DaffCompositeConfigurationItem>
): BehaviorSubject<DaffPriceRange>
getOptionalItemPricesForConfiguration(
id: string
configuration?: Dictionary<DaffCompositeConfigurationItem>
): BehaviorSubject<DaffPriceRange>
getPricesAsCurrentlyConfigured(id: string): BehaviorSubject<DaffPriceRange>
getAppliedOptions(id: string): BehaviorSubject<Dictionary<DaffCompositeProductItemOption>>
getDiscountAmount(id: string): BehaviorSubject<number>
getDiscountPercent(id: string): BehaviorSubject<number>
isItemRequired(
id: string
item_id: string
): BehaviorSubject<boolean>
dispatch(action): void
hasDiscount(priceRange: DaffPriceRange): boolean
hasPriceRange(priceRange: DaffPriceRange): boolean
}
BehaviorSubject<DaffPriceRange>
Get a DaffPriceRange for a composite product based on the configuration provided excluding unselected, optional item prices.
Parameter | id: string |
---|---|
Description |
Parameter | configuration: Dictionary<DaffCompositeConfigurationItem> |
---|---|
Description |
BehaviorSubject<DaffPriceRange>
Get the broadest possible DaffPriceRange for a composite product based on the configuration provided including optional item prices.
Parameter | id: string |
---|---|
Description |
Parameter | configuration: Dictionary<DaffCompositeConfigurationItem> |
---|---|
Description |
BehaviorSubject<DaffPriceRange>
Get the DaffPriceRange for a composite product based on the current configuration of selected item options in redux state and excluding unselected, optional item prices.
Parameter | id: string |
---|---|
Description |
BehaviorSubject<Dictionary<DaffCompositeProductItemOption>>
Returns the applied options for a composite product.
Parameter | id: string |
---|---|
Description |
BehaviorSubject<number>
Returns the discount amount of a composite product based on the current configuration of the selected item options in redux state and excluding unselected, optional item prices. Will return undefined if all required options are not chosen.
Parameter | id: string |
---|---|
Description |
BehaviorSubject<number>
Returns the discount percent of a composite product based on the current configuration of the selected item options in redux state and excluding unselected, optional item prices. Will return undefined if all required options are not chosen. Note: This percent is computed client-side and should be treated as an estimate rather than an exact value.
Parameter | id: string |
---|---|
Description |
BehaviorSubject<boolean>
Returns whether the item of a composite product is required.
Parameter | id: string |
---|---|
Description |
Parameter | item_id: string |
---|---|
Description |
void
Parameter | action: undefined |
---|---|
Description |
boolean
Returns whether a DaffPriceRange has a discount.
Parameter | priceRange: DaffPriceRange |
---|---|
Description |
boolean
Returns whether the min and max prices of a DaffPriceRange are different.
Parameter | priceRange: DaffPriceRange |
---|---|
Description |