{"version":3,"file":"cotizador.mjs","sources":["../../../projects/cotizador/src/lib/cotizador.service.ts","../../../projects/cotizador/src/lib/cotizador.component.ts","../../../projects/cotizador/src/lib/cotizador.component.html","../../../projects/cotizador/src/lib/cotizador.module.ts","../../../projects/cotizador/src/public-api.ts","../../../projects/cotizador/src/cotizador.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class CotizadorService {\n\n  constructor() { }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\n@Component({\n  selector: 'tks-cotizador',\n  templateUrl: './cotizador.component.html',\n  styleUrls: ['./cotizador.component.scss'],\n})\nexport class CotizadorComponent implements OnInit {\n\n  @Input() jsonCreditQuoteDesign: any;\n  @Output() submitCredit = new EventEmitter<any>();\n\n  safeContentCard: SafeHtml;\n  safeContentHeader: SafeHtml;\n  minAmount: number = 0;\n  maxAmount: number = 0;\n  increment: number = 0;\n  incrementFrecuncy: number = 0;\n  amountSelect: any;\n  insuranceCost: number = 0;\n  insuranceToPay: number = 0;\n  maxFrecuency: number = 0;\n  minFrecuency: number = 0;\n  frecuency: any;\n  frecuencySelect: string = '';\n  payments: number;\n  inputFrecuency: boolean = false;\n  inner: boolean = false;\n  frecuencyText: string = '';\n  title: string = '';\n  subtitle: string = '';\n  content: string = '';\n  amountToPay: number = 0;\n  paymentsText: string = '';\n  paymentsTextComplement: string = '';\n  anualTax: number = 0;\n  factor: number = 0;\n  Iva: number = 0;\n  inputAmountText: string = '';\n  inputPaymentsText: string = '';\n  constructor(\n    private sanitizer: DomSanitizer\n  ) { }\n\n  ngOnInit() {\n    this.paymentsTextComplement = '';\n    this.incrementFrecuncy = 1;\n    this.title = this.jsonCreditQuoteDesign.header.title;\n    this.subtitle = this.jsonCreditQuoteDesign.header.subtitle;\n    this.content = this.jsonCreditQuoteDesign.contentComponent.contentComponentInner;\n    this.safeContentHeader = this.sanitizer.bypassSecurityTrustHtml(\n      this.subtitle\n    );\n    this.safeContentCard = this.sanitizer.bypassSecurityTrustHtml(\n      this.content\n    );\n    this.minAmount = this.jsonCreditQuoteDesign.contentComponent.minAmount;\n    this.maxAmount = this.jsonCreditQuoteDesign.contentComponent.maxAmount;\n    this.increment = this.jsonCreditQuoteDesign.contentComponent.increment;\n    this.frecuency = this.jsonCreditQuoteDesign.contentComponent.frecuency.options;\n    this.inputAmountText = this.jsonCreditQuoteDesign.contentComponent.inputAmountText;\n    this.inputPaymentsText = this.jsonCreditQuoteDesign.contentComponent.inputPaymentsText;\n    this.setVariable();\n    this.selectfrecuency(this.frecuency[0])\n  }\n  paymentCalc(select) {\n    this.inner = false;\n    if(select == 'frecuency' ){\n      this.paymentsText = this.payments + ' ' + this.paymentsTextComplement;\n      this.insuranceToPay = this.insuranceCost * this.payments;\n      setTimeout(() => {\n        this.inner = this.amountSelect > 0 ? true : false;\n      }, 200);\n    }\n    else if(this.payments > 0){\n      this.insuranceToPay = this.insuranceCost * this.payments;\n      setTimeout(() => {\n        this.inner = true;\n      }, 200);\n    }\n    if(this.frecuencySelect == 'Mensual'){\n      this.amountToPay = ( (this.amountSelect+this.insuranceToPay) * ((this.anualTax/100)/12) ) / ( 1 - ( Math.pow((1+((this.anualTax/100)/12)),(-this.payments))) );\n    }\n    else{\n      this.amountToPay = ((((this.amountSelect+this.insuranceToPay)*(this.payments*this.factor)*this.anualTax)) + (this.amountSelect+this.insuranceToPay) ) / this.payments ;\n    }\n    this.setVariable();\n    let arraySubmit = {\n      amountSelect: this.amountSelect,\n      payments: this.payments,\n      insuranceCost: this.insuranceCost,\n      frecuency: this.frecuencySelect,\n      amountToPay: this.amountToPay,\n      amountToPayTotal: (this.amountToPay*this.payments),\n      insuranceToPay: this.insuranceToPay,\n      frecuencyText: this.frecuencyText\n    }\n    this.submitCredit.emit(arraySubmit)\n  }\n  selectfrecuency(frecuency) {\n    this.payments = 0;\n    this.paymentsText = '';\n    this.inner = false;\n    for (let i of this.frecuency) {\n      i.selected = false;\n    }\n    this.frecuencySelect = frecuency.id;\n    frecuency.selected = true;\n    this.inputFrecuency = true;\n    this.minFrecuency = frecuency.min;\n    this.maxFrecuency = frecuency.max;\n    this.frecuencyText = frecuency.text;\n    this.paymentsTextComplement = frecuency.text2;\n    this.insuranceCost = frecuency.insuranceCost;\n    this.anualTax = frecuency.anualTax;\n    this.factor = frecuency.factor;\n    this.Iva = frecuency.iva\n  }\n  setVariable() {\n    setTimeout(() => {\n      let contentHTML = document.querySelectorAll(\"span\");\n      if (contentHTML == null) {\n        this.setVariable();\n      }\n      else {\n        contentHTML.forEach(element => {\n          switch (element.textContent) {\n            case '{{maxAmount}}': {\n              element.innerHTML = this.maxAmount.toLocaleString('en-US', {\n                style: 'currency',\n                currency: 'USD',\n              });\n              break;\n            }\n            case '{{minAmount}}': {\n              element.innerHTML = this.minAmount.toLocaleString('en-US', {\n                style: 'currency',\n                currency: 'USD',\n              });\n              break;\n            }\n            case '{{amountSelect}}': {\n              element.innerHTML = this.amountSelect.toLocaleString('en-US', {\n                style: 'currency',\n                currency: 'USD',\n              });\n              break;\n            }\n            case '{{paymentsSelect}}': {\n              element.innerHTML = this.payments.toString();\n              break;\n            }\n            case '{{paymentsText}}': {\n              element.innerHTML = this.paymentsText\n              break;\n            }\n            case '{{frecuencyText}}': {\n              element.innerHTML = this.frecuencyText\n              break;\n            }\n            case '{{amountToPay}}': {\n              element.innerHTML = this.amountToPay.toLocaleString('en-US', {\n                style: 'currency',\n                currency: 'USD',\n              });\n              break;\n            }\n            case '{{insuranceCost}}': {\n              element.innerHTML = this.insuranceToPay.toLocaleString('en-US', {\n                style: 'currency',\n                currency: 'USD',\n              });\n              break;\n            }\n          }\n\n        })\n      }\n    }, 200);\n  }\n\n  back(){\n    console.log('');\n\n  }\n\n}\n","<div class=\"creditQuote\">\n  <h1>\n    <ion-icon style=\"color:#493176; margin-left: -50px; cursor: pointer;\" name=\"arrow-back-outline\" (click)=\"back()\"></ion-icon>\n    {{title}}\n  </h1>\n  <div class=\"inner\" [innerHTML]=\"subtitle\"></div>\n  <h3 class=\"amountSelect\">{{amountSelect | currency}}</h3>\n  <div style=\"text-align: -webkit-center;\">\n    <ion-grid class=\"tabs\">\n      <ion-row>\n        <ion-col *ngFor=\"let item of frecuency\">\n          <ion-chip (click)=\"selectfrecuency(item)\" [ngClass]=\"item.selected ? 'active' : 'nonActive' \">\n            <ion-label>{{item.id}}</ion-label>\n          </ion-chip>\n        </ion-col>\n      </ion-row>\n    </ion-grid>\n    <h4 class=\"labelsInputs\">{{inputAmountText}} <span>{{amountSelect | currency}}</span>  </h4>\n    <div class=\"inputRangeAmount\">\n      <input class=\"range\" type=\"range\" min=\"{{minAmount}}\" max=\"{{maxAmount}}\" value=\"0\" step=\"{{increment}}\"\n        [(ngModel)]=\"amountSelect\" (input)=\"paymentCalc('amout')\">\n    </div>\n    <h4 class=\"labelsInputs\">{{inputPaymentsText}} <span>{{paymentsText}}</span></h4>\n    <div class=\"inputRangeFrecuency\" >\n      <input class=\"range\" type=\"range\" min=\"{{minFrecuency}}\" max=\"{{maxFrecuency}}\" value=\"0\" step=\"{{incrementFrecuncy}}\"\n        [(ngModel)]=\"payments\" (input)=\"paymentCalc('frecuency')\">\n    </div>\n  </div>\n  <div class=\"inner2\" [innerHTML]=\"content\" *ngIf=\"inner\"></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { IonicModule } from '@ionic/angular';\nimport { CotizadorComponent } from './cotizador.component';\n\n\n\n@NgModule({\n  declarations: [\n    CotizadorComponent\n  ],\n  imports: [\n    CommonModule,\n    IonicModule,\n    ReactiveFormsModule,\n    FormsModule,\n\n  ],\n  exports:[\n    CotizadorComponent\n  ]\n})\nexport class CotizadorModule { }\n","/*\n * Public API Surface of cotizador\n */\n\nexport * from './lib/cotizador.service';\nexport * from './lib/cotizador.component';\nexport * from './lib/cotizador.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}