UNPKG

@malga-checkout/core

Version:
50 lines (49 loc) 1.83 kB
import { t } from '@malga-checkout/i18n'; import { Component, Host, h, State } from '@stencil/core'; import settings from '../../../../stores/settings'; import { MalgaPaymentsDripContentService } from './malga-payments-drip-content.service'; import DripPayIcon from './assets/drip-pay.svg'; export class MalgaPaymentsDripContent { constructor() { this.installments = []; this.cashback = ''; this.fetchInstallments = async () => { const dripContentService = new MalgaPaymentsDripContentService({ amount: settings.transactionConfig.amount, sandbox: settings.sandbox, debug: settings.debug, clientId: settings.clientId, }); const { cashback, installments } = await dripContentService.getContent(); this.cashback = cashback; this.installments = installments; }; } componentWillLoad() { this.fetchInstallments(); } render() { return (h(Host, { class: { 'malga-payments-drip-content__container': true } }, h("i", { innerHTML: DripPayIcon }), h("p", null, t('paymentMethods.drip.descriptions.first', settings.locale), ' ', h("strong", null, t('paymentMethods.drip.descriptions.second', settings.locale, { installments: this.installments.length.toString() })), ' ', t('paymentMethods.drip.descriptions.third', settings.locale)), h("malga-payments-drip-installments", { cashback: this.cashback, installments: this.installments }))); } static get is() { return "malga-payments-drip-content"; } static get originalStyleUrls() { return { "$": ["malga-payments-drip-content.scss"] }; } static get styleUrls() { return { "$": ["malga-payments-drip-content.css"] }; } static get states() { return { "installments": {}, "cashback": {} }; } }