1 | import 'rxjs/add/operator/catch';
|
2 | import { Component, EventEmitter, Input, Output } from '@angular/core';
|
3 | var AddonDetailsComponent = (function () {
|
4 | function AddonDetailsComponent() {
|
5 | this.prerequisiteSelected = new EventEmitter();
|
6 | }
|
7 | AddonDetailsComponent.prototype.onPrerequisiteSelected = function () {
|
8 | this.prerequisiteSelected.emit();
|
9 | };
|
10 | AddonDetailsComponent.prototype.getPricing = function (product, addon) {
|
11 | return {
|
12 | currency: product.currency,
|
13 | prices: [{
|
14 | price: addon.price,
|
15 | frequency: addon.billingFrequency ? addon.billingFrequency : 'Monthly'
|
16 | }]
|
17 | };
|
18 | };
|
19 | Object.defineProperty(AddonDetailsComponent.prototype, "pricingLabel", {
|
20 | get: function () {
|
21 | return this.reseller ? 'Wholesale Pricing' : 'Pricing';
|
22 | },
|
23 | enumerable: true,
|
24 | configurable: true
|
25 | });
|
26 | AddonDetailsComponent.decorators = [
|
27 | { type: Component, args: [{
|
28 | selector: 'addon-details',
|
29 | template: "<div class=\"addon-page\"> <va-header-container [iconUrl]=\"addon.icon\" [title]=\"addon.title\" [tagline]=\"addon.tagline\" [chipLabels]=\"product.getLmiCategoryNames()\" [showPricing]=\"true\" [pricing]=\"getPricing(product, addon)\" [pricingLabel]=\"pricingLabel\" [prerequisiteLabel]=\"product.name\" (prerequisiteSelected)=\"onPrerequisiteSelected()\"> </va-header-container> <div class=\"addon-details addon-content\"> <ng-container *ngIf=\"reseller\"> <div class=\"left-column\"> <div *ngIf=\"addon.resellerMarketing?.description || addon.resellerMarketing?.keySellingPoints\"> <va-selling-info [description]=\"addon.resellerMarketing?.description\" [keySellingPoints]=\"addon.resellerMarketing?.keySellingPoints\"></va-selling-info> </div> <section *ngIf=\"addon.resellerMarketing?.faqs?.length > 0 && addon.resellerMarketing?.faqs[0].question\"> <h2 class=\"va-addon-title\">FAQs</h2> <va-faqs [faqs]=\"addon.resellerMarketing?.faqs\"></va-faqs> </section> </div> <div class=\"right-column\"> <section *ngIf=\"addon.screenshots?.length > 0\"> <h2 class=\"va-addon-title\">Gallery</h2> <va-image-gallery [imageUrls]=\"addon.screenshots\"></va-image-gallery> </section> <section *ngIf=\"addon.resellerMarketing?.files?.length > 0\"> <h2 class=\"va-addon-title\">Files</h2> <va-files [files]=\"addon.resellerMarketingFiles\"></va-files> </section> </div> </ng-container> <ng-container *ngIf=\"!reseller\"> <div class=\"left-column\"> <div *ngIf=\"addon.endUserMarketing?.description || addon.endUserMarketing?.keySellingPoints\"> <va-selling-info [description]=\"addon.endUserMarketing?.description\" [keySellingPoints]=\"addon.endUserMarketing?.keySellingPoints\"></va-selling-info> </div> <section *ngIf=\"addon.endUserMarketing?.faqs?.length > 0 && addon.endUserMarketing?.faqs[0].question\"> <h2 class=\"va-addon-title\">FAQs</h2> <va-faqs [faqs]=\"addon.endUserMarketing?.faqs\"></va-faqs> </section> </div> <div class=\"right-column\"> <section *ngIf=\"addon.screenshots?.length > 0\"> <h2 class=\"va-addon-title\">Gallery</h2> <va-image-gallery [imageUrls]=\"addon.screenshots\"></va-image-gallery> </section> <section *ngIf=\"addon.endUserMarketing?.files?.length > 0\"> <h2 class=\"va-addon-title\">Files</h2> <va-files [files]=\"addon.endUserMarketingFiles\"></va-files> </section> </div> </ng-container> </div> </div> ",
|
30 | styles: [":host { display: block; font-size: 14px; line-height: 1.4; } :host * { box-sizing: border-box; } .va-addon-title { font-size: 32px; font-weight: 300; margin-top: 0; color: #212121; } @media screen and (min-width: 600px) { .va-addon-title { font-size: 32px; } } img { max-width: 100%; } va-icon { display: inline-block; } .addon-page { position: relative; margin: 0 auto 20px; background: #fff; box-shadow: 0 3px 10px rgba(33, 33, 33, 0.3); overflow: hidden; font-size: 16px; color: #212121; } .addon-page .item-amount { color: #999; font-size: 14px; text-align: right; margin: 0 24px 8px; } section { padding: 24px; } .left-column { width: 66%; } @media screen and (max-width: 600px) { .left-column { width: 100%; } } .right-column { width: 34%; } @media screen and (max-width: 600px) { .right-column { width: 100%; } } .addon-content { display: flex; } @media screen and (max-width: 600px) { .addon-content { flex-direction: column; } } "]
|
31 | },] },
|
32 | ];
|
33 |
|
34 | AddonDetailsComponent.ctorParameters = function () { return []; };
|
35 | AddonDetailsComponent.propDecorators = {
|
36 | 'product': [{ type: Input },],
|
37 | 'addon': [{ type: Input },],
|
38 | 'reseller': [{ type: Input },],
|
39 | 'prerequisiteSelected': [{ type: Output },],
|
40 | };
|
41 | return AddonDetailsComponent;
|
42 | }());
|
43 | export { AddonDetailsComponent };
|
44 | ;
|