UNPKG

@vendasta/store

Version:

Components and data for Store

119 lines (118 loc) 11.1 kB
import { Component, Input } from '@angular/core'; import { Currency, Revenue } from '@vendasta/sales-orders'; import { convertSalesOrderCurrencyToString, getPeriodTranslationKey } from '../shared/conversion-utils'; import * as i0 from "@angular/core"; import * as i1 from "@angular/material/list"; import * as i2 from "@angular/common"; import * as i3 from "@angular/material/core"; import * as i4 from "@ngx-translate/core"; import * as i5 from "@vendasta/core/shared"; export class SimplePriceDisplayComponent { constructor() { this.revenueComponents = []; } ngOnChanges(changes) { this.currencyString = this.getCurrency(); if (this.revenue.revenueComponents && this.revenue.revenueComponents.length) { this.revenueComponents = this.revenue.revenueComponents.map((component) => { return { isStartingRevenue: component.isStartingRevenue, value: component.value, period: this.getRevenuePeriod(component.period), }; }); } else { this.revenueComponents = []; } } getCurrency() { if (!!this.currencyCode) { return this.currencyCode; } return convertSalesOrderCurrencyToString(this.currency); } getRevenuePeriod(period) { return getPeriodTranslationKey(period); } } SimplePriceDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SimplePriceDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); SimplePriceDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: SimplePriceDisplayComponent, selector: "app-simple-price-display", inputs: { currency: "currency", currencyCode: "currencyCode", revenue: "revenue" }, usesOnChanges: true, ngImport: i0, template: ` <ng-container *ngIf="revenueComponents?.length > 0"> <ng-container *ngFor="let revenueComponent of revenueComponents"> <div matLine> <span *ngIf="revenueComponent.isStartingRevenue && revenueComponent.value > 0" class="starting-at-before-price" > <strong>{{ 'FRONTEND.STORE.STARTING_AT' | translate }}</strong> </span> <strong>{{ revenueComponent.value || 0 | price$: currencyString | async }}</strong> </div> <div matLine class="tertiary-font-color" *ngIf="revenueComponent.value > 0"> {{ revenueComponent.period | translate }} </div> </ng-container> </ng-container> <ng-container *ngIf="revenueComponents?.length <= 0"> <mat-list-item class="summary-list-item"> <div matLine> <strong>{{ null | price$: 'CAD' | async }}</strong> </div> </mat-list-item> </ng-container> `, isInline: true, styles: [".starting-at-before-price{color:#212121;margin-right:14px}.tertiary-font-color{color:#212121;font-size:14px!important}.summary-list-item{padding-right:14px;text-align:right}\n"], components: [{ type: i1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.MatLine, selector: "[mat-line], [matLine]" }], pipes: { "translate": i4.TranslatePipe, "async": i2.AsyncPipe, "price$": i5.DisplayPricePipe } }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SimplePriceDisplayComponent, decorators: [{ type: Component, args: [{ selector: 'app-simple-price-display', template: ` <ng-container *ngIf="revenueComponents?.length > 0"> <ng-container *ngFor="let revenueComponent of revenueComponents"> <div matLine> <span *ngIf="revenueComponent.isStartingRevenue && revenueComponent.value > 0" class="starting-at-before-price" > <strong>{{ 'FRONTEND.STORE.STARTING_AT' | translate }}</strong> </span> <strong>{{ revenueComponent.value || 0 | price$: currencyString | async }}</strong> </div> <div matLine class="tertiary-font-color" *ngIf="revenueComponent.value > 0"> {{ revenueComponent.period | translate }} </div> </ng-container> </ng-container> <ng-container *ngIf="revenueComponents?.length <= 0"> <mat-list-item class="summary-list-item"> <div matLine> <strong>{{ null | price$: 'CAD' | async }}</strong> </div> </mat-list-item> </ng-container> `, styles: [ ` .starting-at-before-price { color: #212121; margin-right: 14px; } .tertiary-font-color { color: #212121; font-size: 14px !important; } .summary-list-item { padding-right: 14px; text-align: right; } `, ], }] }], propDecorators: { currency: [{ type: Input }], currencyCode: [{ type: Input }], revenue: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXByaWNlLWRpc3BsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zdG9yZS9zcmMvbGliL3ByaWNpbmcvc2ltcGxlLXByaWNlLWRpc3BsYXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBaUIsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7OztBQStDeEcsTUFBTSxPQUFPLDJCQUEyQjtJQTdDeEM7UUFtREUsc0JBQWlCLEdBSVgsRUFBRSxDQUFDO0tBMkJWO0lBekJDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN6QyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7WUFDM0UsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ3hFLE9BQU87b0JBQ0wsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLGlCQUFpQjtvQkFDOUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLO29CQUN0QixNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7aUJBQ2hELENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztTQUMxQjtRQUNELE9BQU8saUNBQWlDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxNQUFxQjtRQUNwQyxPQUFPLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O3dIQXBDVSwyQkFBMkI7NEdBQTNCLDJCQUEyQix5S0EzQzVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3QlQ7MkZBbUJVLDJCQUEyQjtrQkE3Q3ZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3QlQ7b0JBQ0QsTUFBTSxFQUFFO3dCQUNOOzs7Ozs7Ozs7Ozs7OztLQWNDO3FCQUNGO2lCQUNGOzhCQUVVLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEN1cnJlbmN5LCBSZXZlbnVlLCBSZXZlbnVlUGVyaW9kIH0gZnJvbSAnQHZlbmRhc3RhL3NhbGVzLW9yZGVycyc7XG5pbXBvcnQgeyBjb252ZXJ0U2FsZXNPcmRlckN1cnJlbmN5VG9TdHJpbmcsIGdldFBlcmlvZFRyYW5zbGF0aW9uS2V5IH0gZnJvbSAnLi4vc2hhcmVkL2NvbnZlcnNpb24tdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc2ltcGxlLXByaWNlLWRpc3BsYXknLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZXZlbnVlQ29tcG9uZW50cz8ubGVuZ3RoID4gMFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcmV2ZW51ZUNvbXBvbmVudCBvZiByZXZlbnVlQ29tcG9uZW50c1wiPlxuICAgICAgICA8ZGl2IG1hdExpbmU+XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICpuZ0lmPVwicmV2ZW51ZUNvbXBvbmVudC5pc1N0YXJ0aW5nUmV2ZW51ZSAmJiByZXZlbnVlQ29tcG9uZW50LnZhbHVlID4gMFwiXG4gICAgICAgICAgICBjbGFzcz1cInN0YXJ0aW5nLWF0LWJlZm9yZS1wcmljZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHN0cm9uZz57eyAnRlJPTlRFTkQuU1RPUkUuU1RBUlRJTkdfQVQnIHwgdHJhbnNsYXRlIH19PC9zdHJvbmc+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzdHJvbmc+e3sgcmV2ZW51ZUNvbXBvbmVudC52YWx1ZSB8fCAwIHwgcHJpY2UkOiBjdXJyZW5jeVN0cmluZyB8IGFzeW5jIH19PC9zdHJvbmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IG1hdExpbmUgY2xhc3M9XCJ0ZXJ0aWFyeS1mb250LWNvbG9yXCIgKm5nSWY9XCJyZXZlbnVlQ29tcG9uZW50LnZhbHVlID4gMFwiPlxuICAgICAgICAgIHt7IHJldmVudWVDb21wb25lbnQucGVyaW9kIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJldmVudWVDb21wb25lbnRzPy5sZW5ndGggPD0gMFwiPlxuICAgICAgPG1hdC1saXN0LWl0ZW0gY2xhc3M9XCJzdW1tYXJ5LWxpc3QtaXRlbVwiPlxuICAgICAgICA8ZGl2IG1hdExpbmU+XG4gICAgICAgICAgPHN0cm9uZz57eyBudWxsIHwgcHJpY2UkOiAnQ0FEJyB8IGFzeW5jIH19PC9zdHJvbmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgIDwvbmctY29udGFpbmVyPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAuc3RhcnRpbmctYXQtYmVmb3JlLXByaWNlIHtcbiAgICAgICAgY29sb3I6ICMyMTIxMjE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTRweDtcbiAgICAgIH1cblxuICAgICAgLnRlcnRpYXJ5LWZvbnQtY29sb3Ige1xuICAgICAgICBjb2xvcjogIzIxMjEyMTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuc3VtbWFyeS1saXN0LWl0ZW0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTaW1wbGVQcmljZURpc3BsYXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBjdXJyZW5jeTogQ3VycmVuY3k7XG4gIEBJbnB1dCgpIGN1cnJlbmN5Q29kZTogc3RyaW5nO1xuICBASW5wdXQoKSByZXZlbnVlOiBSZXZlbnVlO1xuXG4gIGN1cnJlbmN5U3RyaW5nOiBzdHJpbmc7XG4gIHJldmVudWVDb21wb25lbnRzOiB7XG4gICAgaXNTdGFydGluZ1JldmVudWU6IGJvb2xlYW47XG4gICAgdmFsdWU6IG51bWJlcjtcbiAgICBwZXJpb2Q6IHN0cmluZztcbiAgfVtdID0gW107XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVuY3lTdHJpbmcgPSB0aGlzLmdldEN1cnJlbmN5KCk7XG4gICAgaWYgKHRoaXMucmV2ZW51ZS5yZXZlbnVlQ29tcG9uZW50cyAmJiB0aGlzLnJldmVudWUucmV2ZW51ZUNvbXBvbmVudHMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnJldmVudWVDb21wb25lbnRzID0gdGhpcy5yZXZlbnVlLnJldmVudWVDb21wb25lbnRzLm1hcCgoY29tcG9uZW50KSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaXNTdGFydGluZ1JldmVudWU6IGNvbXBvbmVudC5pc1N0YXJ0aW5nUmV2ZW51ZSxcbiAgICAgICAgICB2YWx1ZTogY29tcG9uZW50LnZhbHVlLFxuICAgICAgICAgIHBlcmlvZDogdGhpcy5nZXRSZXZlbnVlUGVyaW9kKGNvbXBvbmVudC5wZXJpb2QpLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmV2ZW51ZUNvbXBvbmVudHMgPSBbXTtcbiAgICB9XG4gIH1cblxuICBnZXRDdXJyZW5jeSgpOiBzdHJpbmcge1xuICAgIGlmICghIXRoaXMuY3VycmVuY3lDb2RlKSB7XG4gICAgICByZXR1cm4gdGhpcy5jdXJyZW5jeUNvZGU7XG4gICAgfVxuICAgIHJldHVybiBjb252ZXJ0U2FsZXNPcmRlckN1cnJlbmN5VG9TdHJpbmcodGhpcy5jdXJyZW5jeSk7XG4gIH1cblxuICBnZXRSZXZlbnVlUGVyaW9kKHBlcmlvZDogUmV2ZW51ZVBlcmlvZCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldFBlcmlvZFRyYW5zbGF0aW9uS2V5KHBlcmlvZCk7XG4gIH1cbn1cbiJdfQ==