@vendasta/store
Version:
Components and data for Store
71 lines (70 loc) • 3.72 kB
TypeScript
import { OnChanges, SimpleChanges } from '@angular/core';
import { BilledProduct, PricingTier } from '@vendasta/billing';
import { MarketplaceBillingFrequency, DisplayPriceService } from '@vendasta/core/shared';
import { Pricing, Price } from './pricing';
import { BehaviorSubject, Observable } from 'rxjs';
import { TranslateService } from '@ngx-translate/core';
import { Discount, DiscountService } from '@vendasta/billing';
import * as i0 from "@angular/core";
export declare class VaBasePricingComponent implements OnChanges {
private translateService;
private displayPriceService;
readonly partnerId$: Observable<string>;
private discountService;
pricing: Pricing;
billedProduct: BilledProduct;
wrapFrequency: boolean;
isAddon: boolean;
hasVerifiedContract: boolean;
highlightPrice: boolean;
loaded: boolean;
showAllPrices: boolean;
useAbbreviatedFrequency: boolean;
showIsStartingAt: boolean;
pricing$$: BehaviorSubject<Pricing>;
billedProduct$$: BehaviorSubject<BilledProduct>;
hasVerifiedContract$$: BehaviorSubject<boolean>;
isFree$: Observable<boolean>;
shouldContactSales$: Observable<boolean>;
isFlatPrice$: Observable<boolean>;
pricingTierData$: Observable<{
isStartingPrice: boolean;
pricingTierString: string;
pricingTierForProduct: string;
pricingTierForAddon: string;
priceStringForTier: string;
priceStringForTierWithoutFreq: string;
}[]>;
priceData$: Observable<{
isStartingPrice: boolean;
priceStringForPricingWithoutFrequency: string;
priceStringForPricingWithFrequency: string;
frequencyString: string;
abbreviatedFrequencyString: string;
}[]>;
commitmentMessage$: Observable<string>;
setupFeeString$: Observable<string>;
isFirstTierFree$: Observable<boolean>;
showPricingPopover: boolean;
discounts$: Observable<Discount[]>;
get pricing$(): Observable<Pricing>;
get billedProduct$(): Observable<BilledProduct>;
get hasVerifiedContract$(): Observable<boolean>;
constructor(translateService: TranslateService, displayPriceService: DisplayPriceService, partnerId$: Observable<string>, discountService: DiscountService);
ngOnChanges(changes: SimpleChanges): void;
buildPricingTierString(tier: PricingTier): Observable<string>;
buildPricingTierForProduct(tier: PricingTier, frequency?: string): Observable<string>;
buildPricingTierForAddon(tier: PricingTier): Observable<string>;
sortPricesByFrequency(priceA: Price, priceB: Price): number;
buildPriceStringForPricing(price: Price, currency: string, excludeFrequency: boolean, canIncludeStartingAtPrefix: boolean): Observable<string>;
buildPriceStringForTier(tier: PricingTier, frequency?: MarketplaceBillingFrequency, isStartingPrice?: boolean): Observable<string>;
buildFrequencyString(frequency?: string): Observable<string>;
buildAbbreviatedFrequencyString(frequency?: string): string;
buildCommitmentMessage(): Observable<string>;
private fetchAllDiscounts;
private getDiscounts;
itemInfoIconEnter(): void;
itemInfoIconLeave(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<VaBasePricingComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<VaBasePricingComponent, "app-base-pricing", never, { "pricing": "pricing"; "billedProduct": "billedProduct"; "wrapFrequency": "wrapFrequency"; "isAddon": "isAddon"; "hasVerifiedContract": "hasVerifiedContract"; "highlightPrice": "highlightPrice"; "loaded": "loaded"; "showAllPrices": "showAllPrices"; "useAbbreviatedFrequency": "useAbbreviatedFrequency"; "showIsStartingAt": "showIsStartingAt"; }, {}, never, never>;
}