iptdevs-design-system 2.7.116 → 2.7.118

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,12 +2,18 @@ import { Injectable } from '@angular/core';
2
2
  import Swal from 'sweetalert2';
3
3
  import * as i0 from "@angular/core";
4
4
  export class CalculateQuotesService {
5
- constructor() { }
5
+ constructor() {
6
+ this.monthsDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
7
+ }
6
8
  calculateQuotes(params) {
7
9
  let dataFinancing = [];
8
10
  let index = 1; // Indicador de cant. de cuotas
9
11
  let dateJs = new Date(params.date);
12
+ let isEndMonth = false;
10
13
  dateJs.setMilliseconds(dateJs.getMilliseconds() + (1000 * 3600 * 24));
14
+ isEndMonth = this.monthsDays[dateJs.getMonth()] === dateJs.getDate();
15
+ console.log('---- end of month ---');
16
+ console.log(isEndMonth);
11
17
  if (dateJs.getDay() === 0) {
12
18
  Swal.fire({
13
19
  title: 'Fecha inválida',
@@ -28,7 +34,7 @@ export class CalculateQuotesService {
28
34
  dataFinancing.push(quota);
29
35
  while (index < params.quotaTimes) {
30
36
  index = index + 1;
31
- let newJsDate = this.setPlusOneMonth(dateJs);
37
+ let newJsDate = this.setPlusOneMonth(dateJs, isEndMonth);
32
38
  let row = [
33
39
  index,
34
40
  Intl.NumberFormat('en-US', {
@@ -44,15 +50,19 @@ export class CalculateQuotesService {
44
50
  }
45
51
  return dataFinancing;
46
52
  }
47
- setPlusOneMonth(originDate) {
53
+ setPlusOneMonth(originDate, isEndMonth) {
48
54
  let response = [];
49
55
  let oneDayMilis = 1000 * 3600 * 24;
50
- let plusMonthDate = new Date(originDate.getFullYear(), originDate.getMonth() + 1, originDate.getDate());
51
- response.push(plusMonthDate);
56
+ let day = isEndMonth || (originDate.getMonth() === 1 && originDate.getDate() > 28) ? this.monthsDays[originDate.getMonth()] : originDate.getDate();
57
+ let plusMonthDate = new Date(originDate.getFullYear(), originDate.getMonth() + 1, day);
58
+ let initialDate = new Date(originDate.getFullYear(), originDate.getMonth() + 1, day);
59
+ response.push(initialDate);
52
60
  while (plusMonthDate.getDay() === 0) {
53
61
  plusMonthDate.setMilliseconds(originDate.getMilliseconds() - oneDayMilis);
54
62
  }
55
63
  response.push(plusMonthDate);
64
+ console.log('date for ' + day + ' - ' + originDate.getMonth());
65
+ console.log(response);
56
66
  return response;
57
67
  }
58
68
  getStringDate(originDate) {
@@ -69,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
69
79
  providedIn: 'root'
70
80
  }]
71
81
  }], ctorParameters: function () { return []; } });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXF1b3Rlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9sb2dpYy9jYWxjdWxhdGUtcXVvdGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7O0FBWS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsZ0JBQWdCLENBQUM7SUFFakIsZUFBZSxDQUFDLE1BQTZCO1FBQzNDLElBQUksYUFBYSxHQUFVLEVBQUUsQ0FBQztRQUM5QixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQywrQkFBK0I7UUFDOUMsSUFBSSxNQUFNLEdBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBDLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxHQUFHLENBQUMsSUFBSSxHQUFDLElBQUksR0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWxFLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNSLEtBQUssRUFBRSxnQkFBZ0I7Z0JBQ3ZCLElBQUksRUFBRSwyREFBMkQ7Z0JBQ2pFLElBQUksRUFBRSxPQUFPO2FBQ2QsQ0FBQyxDQUFBO1NBQ0g7YUFBTTtZQUNMLElBQUksS0FBSyxHQUFVO2dCQUNqQixLQUFLO2dCQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFO29CQUN6QixLQUFLLEVBQUUsVUFBVTtvQkFDakIsUUFBUSxFQUFFLEtBQUs7b0JBQ2YscUJBQXFCLEVBQUUsQ0FBQztpQkFDekIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUM7YUFDM0IsQ0FBQztZQUVGLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFMUIsT0FBTyxLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRTtnQkFDaEMsS0FBSyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzdDLElBQUksR0FBRyxHQUFVO29CQUNmLEtBQUs7b0JBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUU7d0JBQ3pCLEtBQUssRUFBRSxVQUFVO3dCQUNqQixRQUFRLEVBQUUsS0FBSzt3QkFDZixxQkFBcUIsRUFBRSxDQUFDO3FCQUN6QixDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNoRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUNwRCxDQUFDO2dCQUNGLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBRXZCLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDdkI7U0FDRjtRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxlQUFlLENBQUMsVUFBZ0I7UUFDOUIsSUFBSSxRQUFRLEdBQVksRUFBRSxDQUFDO1FBRTNCLElBQUksV0FBVyxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ25DLElBQUksYUFBYSxHQUFTLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRTlHLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFN0IsT0FBTSxhQUFhLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ2xDLGFBQWEsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRSxHQUFHLFdBQVcsQ0FBQyxDQUFDO1NBQzNFO1FBRUQsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUU3QixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsYUFBYSxDQUFDLFVBQWdCO1FBQzVCLElBQUksS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsR0FBQyxDQUFDLENBQUM7UUFDcEMsSUFBSSxXQUFXLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ2pELE9BQU8sVUFBVSxDQUFDLFdBQVcsRUFBRSxHQUFHLEdBQUcsR0FBRyxXQUFXLEdBQUcsR0FBRyxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuRixDQUFDOzttSEF2RVUsc0JBQXNCO3VIQUF0QixzQkFBc0IsY0FGckIsTUFBTTsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IFN3YWwgZnJvbSAnc3dlZXRhbGVydDInO1xuXG5leHBvcnQgaW50ZXJmYWNlIENhbGN1bGF0ZVF1b3Rlc1BhcmFtcyB7XG4gIGRhdGU6IERhdGU7XG4gIHF1b3RhVmFsdWVzOiBudW1iZXJcbiAgcXVvdGFUaW1lczogYW55O1xuICB0b3RhbFByaWNlOiBhbnk7XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZVF1b3Rlc1NlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgY2FsY3VsYXRlUXVvdGVzKHBhcmFtczogQ2FsY3VsYXRlUXVvdGVzUGFyYW1zKTogYW55W10ge1xuICAgIGxldCBkYXRhRmluYW5jaW5nOiBhbnlbXSA9IFtdO1xuICAgIGxldCBpbmRleCA9IDE7IC8vIEluZGljYWRvciBkZSBjYW50LiBkZSBjdW90YXNcbiAgICBsZXQgZGF0ZUpzID0gIG5ldyBEYXRlKHBhcmFtcy5kYXRlKTtcblxuICAgIGRhdGVKcy5zZXRNaWxsaXNlY29uZHMoZGF0ZUpzLmdldE1pbGxpc2Vjb25kcygpICsgKDEwMDAqMzYwMCoyNCkpO1xuXG4gICAgaWYgKGRhdGVKcy5nZXREYXkoKSA9PT0gMCkge1xuICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgdGl0bGU6ICdGZWNoYSBpbnbDoWxpZGEnLFxuICAgICAgICB0ZXh0OiAnRGViZSBzZWxlY2Npb25hciB1biBkw61hIGRlIGxhIHNlbWFuYSBkaWZlcmVudGUgYWwgZG9taW5nbycsXG4gICAgICAgIGljb246ICdlcnJvcidcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBxdW90YTogYW55W10gPSBbXG4gICAgICAgIGluZGV4LFxuICAgICAgICBJbnRsLk51bWJlckZvcm1hdCgnZW4tVVMnLCB7XG4gICAgICAgICAgc3R5bGU6ICdjdXJyZW5jeScsXG4gICAgICAgICAgY3VycmVuY3k6ICdVU0QnLFxuICAgICAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMFxuICAgICAgICB9KS5mb3JtYXQoTWF0aC5yb3VuZChwYXJzZUZsb2F0KHBhcmFtcy5xdW90YVZhbHVlcy50b1N0cmluZygpKSkpLFxuICAgICAgICB0aGlzLmdldFN0cmluZ0RhdGUoZGF0ZUpzKVxuICAgICAgXTtcblxuICAgICAgZGF0YUZpbmFuY2luZy5wdXNoKHF1b3RhKTtcblxuICAgICAgd2hpbGUgKGluZGV4IDwgcGFyYW1zLnF1b3RhVGltZXMpIHtcbiAgICAgICAgaW5kZXggPSBpbmRleCArIDE7XG4gICAgICAgIGxldCBuZXdKc0RhdGUgPSB0aGlzLnNldFBsdXNPbmVNb250aChkYXRlSnMpO1xuICAgICAgICBsZXQgcm93OiBhbnlbXSA9IFtcbiAgICAgICAgICBpbmRleCxcbiAgICAgICAgICBJbnRsLk51bWJlckZvcm1hdCgnZW4tVVMnLCB7XG4gICAgICAgICAgICBzdHlsZTogJ2N1cnJlbmN5JyxcbiAgICAgICAgICAgIGN1cnJlbmN5OiAnVVNEJyxcbiAgICAgICAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMFxuICAgICAgICAgIH0pLmZvcm1hdChNYXRoLnJvdW5kKHBhcnNlRmxvYXQocGFyYW1zLnF1b3RhVmFsdWVzLnRvU3RyaW5nKCkpKSksXG4gICAgICAgICAgdGhpcy5nZXRTdHJpbmdEYXRlKG5ld0pzRGF0ZVtuZXdKc0RhdGUubGVuZ3RoIC0gMV0pXG4gICAgICAgIF07XG4gICAgICAgIGRhdGFGaW5hbmNpbmcucHVzaChyb3cpXG5cbiAgICAgICAgZGF0ZUpzID0gbmV3SnNEYXRlWzBdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZGF0YUZpbmFuY2luZztcbiAgfVxuXG4gIHNldFBsdXNPbmVNb250aChvcmlnaW5EYXRlOiBEYXRlKTogRGF0ZVtdIHtcbiAgICBsZXQgcmVzcG9uc2U6IERhdGUgW10gPSBbXTtcblxuICAgIGxldCBvbmVEYXlNaWxpcyA9IDEwMDAgKiAzNjAwICogMjQ7XG4gICAgbGV0IHBsdXNNb250aERhdGU6IERhdGUgPSBuZXcgRGF0ZShvcmlnaW5EYXRlLmdldEZ1bGxZZWFyKCksIG9yaWdpbkRhdGUuZ2V0TW9udGgoKSArIDEsIG9yaWdpbkRhdGUuZ2V0RGF0ZSgpKTsgXG5cbiAgICByZXNwb25zZS5wdXNoKHBsdXNNb250aERhdGUpO1xuXG4gICAgd2hpbGUocGx1c01vbnRoRGF0ZS5nZXREYXkoKSA9PT0gMCkge1xuICAgICAgcGx1c01vbnRoRGF0ZS5zZXRNaWxsaXNlY29uZHMob3JpZ2luRGF0ZS5nZXRNaWxsaXNlY29uZHMoKSAtIG9uZURheU1pbGlzKTtcbiAgICB9XG4gICAgXG4gICAgcmVzcG9uc2UucHVzaChwbHVzTW9udGhEYXRlKTtcblxuICAgIHJldHVybiByZXNwb25zZTtcbiAgfVxuXG4gIGdldFN0cmluZ0RhdGUob3JpZ2luRGF0ZTogRGF0ZSkge1xuICAgIGxldCBtb250aCA9IG9yaWdpbkRhdGUuZ2V0TW9udGgoKSsxO1xuICAgIGxldCBzdHJpbmdNb250aCA9IG1vbnRoIDwgMTAgPyAnMCcrbW9udGggOiBtb250aDtcbiAgICByZXR1cm4gb3JpZ2luRGF0ZS5nZXRGdWxsWWVhcigpICsgJy0nICsgc3RyaW5nTW9udGggKyAnLScgKyBvcmlnaW5EYXRlLmdldERhdGUoKTtcbiAgfVxuXG59XG4iXX0=
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXF1b3Rlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9sb2dpYy9jYWxjdWxhdGUtcXVvdGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7O0FBWS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFJakM7UUFGQyxlQUFVLEdBQWEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXpELENBQUM7SUFFakIsZUFBZSxDQUFDLE1BQTZCO1FBQzNDLElBQUksYUFBYSxHQUFVLEVBQUUsQ0FBQztRQUM5QixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQywrQkFBK0I7UUFDOUMsSUFBSSxNQUFNLEdBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQztRQUV2QixNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLElBQUksR0FBQyxJQUFJLEdBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVsRSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDckUsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFF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LENBQUMsYUFBYSxDQUFDLENBQUM7UUFFN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsR0FBRyxHQUFHLEtBQUssR0FBSSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNoRSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RCLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBZ0I7UUFDNUIsSUFBSSxLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxHQUFDLENBQUMsQ0FBQztRQUNwQyxJQUFJLFdBQVcsR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDakQsT0FBTyxVQUFVLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxHQUFHLFdBQVcsR0FBRyxHQUFHLEdBQUcsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25GLENBQUM7O21IQXJGVSxzQkFBc0I7dUhBQXRCLHNCQUFzQixjQUZyQixNQUFNOzJGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FsY3VsYXRlUXVvdGVzUGFyYW1zIHtcbiAgZGF0ZTogRGF0ZTtcbiAgcXVvdGFWYWx1ZXM6IG51bWJlclxuICBxdW90YVRpbWVzOiBhbnk7XG4gIHRvdGFsUHJpY2U6IGFueTtcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FsY3VsYXRlUXVvdGVzU2VydmljZSB7XG5cbiAgIG1vbnRoc0RheXM6IG51bWJlcltdID0gWzMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgY2FsY3VsYXRlUXVvdGVzKHBhcmFtczogQ2FsY3VsYXRlUXVvdGVzUGFyYW1zKTogYW55W10ge1xuICAgIGxldCBkYXRhRmluYW5jaW5nOiBhbnlbXSA9IFtdO1xuICAgIGxldCBpbmRleCA9IDE7IC8vIEluZGljYWRvciBkZSBjYW50LiBkZSBjdW90YXNcbiAgICBsZXQgZGF0ZUpzID0gIG5ldyBEYXRlKHBhcmFtcy5kYXRlKTtcbiAgICBsZXQgaXNFbmRNb250aCA9IGZhbHNlO1xuXG4gICAgZGF0ZUpzLnNldE1pbGxpc2Vjb25kcyhkYXRlSnMuZ2V0TWlsbGlzZWNvbmRzKCkgKyAoMTAwMCozNjAwKjI0KSk7XG5cbiAgICBpc0VuZE1vbnRoID0gdGhpcy5tb250aHNEYXlzW2RhdGVKcy5nZXRNb250aCgpXSA9PT0gZGF0ZUpzLmdldERhdGUoKTtcbiAgICBjb25zb2xlLmxvZygnLS0tLSBlbmQgb2YgbW9udGggLS0tJyk7XG4gICAgY29uc29sZS5sb2coaXNFbmRNb250aCk7XG5cbiAgICBpZiAoZGF0ZUpzLmdldERheSgpID09PSAwKSB7XG4gICAgICBTd2FsLmZpcmUoe1xuICAgICAgICB0aXRsZTogJ0ZlY2hhIGludsOhbGlkYScsXG4gICAgICAgIHRleHQ6ICdEZWJlIHNlbGVjY2lvbmFyIHVuIGTDrWEgZGUgbGEgc2VtYW5hIGRpZmVyZW50ZSBhbCBkb21pbmdvJyxcbiAgICAgICAgaWNvbjogJ2Vycm9yJ1xuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgbGV0IHF1b3RhOiBhbnlbXSA9IFtcbiAgICAgICAgaW5kZXgsXG4gICAgICAgIEludGwuTnVtYmVyRm9ybWF0KCdlbi1VUycsIHtcbiAgICAgICAgICBzdHlsZTogJ2N1cnJlbmN5JyxcbiAgICAgICAgICBjdXJyZW5jeTogJ1VTRCcsXG4gICAgICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiAwXG4gICAgICAgIH0pLmZvcm1hdChNYXRoLnJvdW5kKHBhcnNlRmxvYXQocGFyYW1zLnF1b3RhVmFsdWVzLnRvU3RyaW5nKCkpKSksXG4gICAgICAgIHRoaXMuZ2V0U3RyaW5nRGF0ZShkYXRlSnMpXG4gICAgICBdO1xuXG4gICAgICBkYXRhRmluYW5jaW5nLnB1c2gocXVvdGEpO1xuXG5cbiAgICAgIHdoaWxlIChpbmRleCA8IHBhcmFtcy5xdW90YVRpbWVzKSB7XG4gICAgICAgIGluZGV4ID0gaW5kZXggKyAxO1xuICAgICAgICBsZXQgbmV3SnNEYXRlID0gdGhpcy5zZXRQbHVzT25lTW9udGgoZGF0ZUpzLCBpc0VuZE1vbnRoKTtcbiAgICAgICAgbGV0IHJvdzogYW55W10gPSBbXG4gICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgSW50bC5OdW1iZXJGb3JtYXQoJ2VuLVVTJywge1xuICAgICAgICAgICAgc3R5bGU6ICdjdXJyZW5jeScsXG4gICAgICAgICAgICBjdXJyZW5jeTogJ1VTRCcsXG4gICAgICAgICAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDBcbiAgICAgICAgICB9KS5mb3JtYXQoTWF0aC5yb3VuZChwYXJzZUZsb2F0KHBhcmFtcy5xdW90YVZhbHVlcy50b1N0cmluZygpKSkpLFxuICAgICAgICAgIHRoaXMuZ2V0U3RyaW5nRGF0ZShuZXdKc0RhdGVbbmV3SnNEYXRlLmxlbmd0aCAtIDFdKVxuICAgICAgICBdO1xuICAgICAgICBkYXRhRmluYW5jaW5nLnB1c2gocm93KVxuXG4gICAgICAgIGRhdGVKcyA9IG5ld0pzRGF0ZVswXTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGFGaW5hbmNpbmc7XG4gIH1cblxuICBzZXRQbHVzT25lTW9udGgob3JpZ2luRGF0ZTogRGF0ZSwgaXNFbmRNb250aDogYm9vbGVhbik6IERhdGVbXSB7XG4gICAgbGV0IHJlc3BvbnNlOiBEYXRlIFtdID0gW107XG5cbiAgICBsZXQgb25lRGF5TWlsaXMgPSAxMDAwICogMzYwMCAqIDI0O1xuXG4gICAgbGV0IGRheSA9IGlzRW5kTW9udGggfHwgKG9yaWdpbkRhdGUuZ2V0TW9udGgoKT09PSAxICYmIG9yaWdpbkRhdGUuZ2V0RGF0ZSgpPjI4KSA/IHRoaXMubW9udGhzRGF5c1tvcmlnaW5EYXRlLmdldE1vbnRoKCldOiBvcmlnaW5EYXRlLmdldERhdGUoKTtcbiAgICBsZXQgcGx1c01vbnRoRGF0ZTogRGF0ZSA9IG5ldyBEYXRlKG9yaWdpbkRhdGUuZ2V0RnVsbFllYXIoKSwgb3JpZ2luRGF0ZS5nZXRNb250aCgpICsgMSwgZGF5KTsgXG4gICAgXG4gICAgbGV0IGluaXRpYWxEYXRlOiBEYXRlID0gbmV3IERhdGUob3JpZ2luRGF0ZS5nZXRGdWxsWWVhcigpLCBvcmlnaW5EYXRlLmdldE1vbnRoKCkgKyAxLCBkYXkpOyBcblxuICAgIHJlc3BvbnNlLnB1c2goaW5pdGlhbERhdGUpO1xuXG4gICAgd2hpbGUocGx1c01vbnRoRGF0ZS5nZXREYXkoKSA9PT0gMCkge1xuICAgICAgcGx1c01vbnRoRGF0ZS5zZXRNaWxsaXNlY29uZHMob3JpZ2luRGF0ZS5nZXRNaWxsaXNlY29uZHMoKSAtIG9uZURheU1pbGlzKTtcbiAgICB9XG4gICAgXG4gICAgcmVzcG9uc2UucHVzaChwbHVzTW9udGhEYXRlKTtcblxuICAgIGNvbnNvbGUubG9nKCdkYXRlIGZvciAnICsgZGF5ICsgJyAtICcgICsgb3JpZ2luRGF0ZS5nZXRNb250aCgpKTtcbiAgICBjb25zb2xlLmxvZyhyZXNwb25zZSk7XG4gICAgcmV0dXJuIHJlc3BvbnNlO1xuICB9XG5cbiAgZ2V0U3RyaW5nRGF0ZShvcmlnaW5EYXRlOiBEYXRlKSB7XG4gICAgbGV0IG1vbnRoID0gb3JpZ2luRGF0ZS5nZXRNb250aCgpKzE7XG4gICAgbGV0IHN0cmluZ01vbnRoID0gbW9udGggPCAxMCA/ICcwJyttb250aCA6IG1vbnRoO1xuICAgIHJldHVybiBvcmlnaW5EYXRlLmdldEZ1bGxZZWFyKCkgKyAnLScgKyBzdHJpbmdNb250aCArICctJyArIG9yaWdpbkRhdGUuZ2V0RGF0ZSgpO1xuICB9XG5cbn1cbiJdfQ==
@@ -3433,12 +3433,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3433
3433
  }] } });
3434
3434
 
3435
3435
  class CalculateQuotesService {
3436
- constructor() { }
3436
+ constructor() {
3437
+ this.monthsDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
3438
+ }
3437
3439
  calculateQuotes(params) {
3438
3440
  let dataFinancing = [];
3439
3441
  let index = 1; // Indicador de cant. de cuotas
3440
3442
  let dateJs = new Date(params.date);
3443
+ let isEndMonth = false;
3441
3444
  dateJs.setMilliseconds(dateJs.getMilliseconds() + (1000 * 3600 * 24));
3445
+ isEndMonth = this.monthsDays[dateJs.getMonth()] === dateJs.getDate();
3446
+ console.log('---- end of month ---');
3447
+ console.log(isEndMonth);
3442
3448
  if (dateJs.getDay() === 0) {
3443
3449
  Swal.fire({
3444
3450
  title: 'Fecha inválida',
@@ -3459,7 +3465,7 @@ class CalculateQuotesService {
3459
3465
  dataFinancing.push(quota);
3460
3466
  while (index < params.quotaTimes) {
3461
3467
  index = index + 1;
3462
- let newJsDate = this.setPlusOneMonth(dateJs);
3468
+ let newJsDate = this.setPlusOneMonth(dateJs, isEndMonth);
3463
3469
  let row = [
3464
3470
  index,
3465
3471
  Intl.NumberFormat('en-US', {
@@ -3475,15 +3481,19 @@ class CalculateQuotesService {
3475
3481
  }
3476
3482
  return dataFinancing;
3477
3483
  }
3478
- setPlusOneMonth(originDate) {
3484
+ setPlusOneMonth(originDate, isEndMonth) {
3479
3485
  let response = [];
3480
3486
  let oneDayMilis = 1000 * 3600 * 24;
3481
- let plusMonthDate = new Date(originDate.getFullYear(), originDate.getMonth() + 1, originDate.getDate());
3482
- response.push(plusMonthDate);
3487
+ let day = isEndMonth || (originDate.getMonth() === 1 && originDate.getDate() > 28) ? this.monthsDays[originDate.getMonth()] : originDate.getDate();
3488
+ let plusMonthDate = new Date(originDate.getFullYear(), originDate.getMonth() + 1, day);
3489
+ let initialDate = new Date(originDate.getFullYear(), originDate.getMonth() + 1, day);
3490
+ response.push(initialDate);
3483
3491
  while (plusMonthDate.getDay() === 0) {
3484
3492
  plusMonthDate.setMilliseconds(originDate.getMilliseconds() - oneDayMilis);
3485
3493
  }
3486
3494
  response.push(plusMonthDate);
3495
+ console.log('date for ' + day + ' - ' + originDate.getMonth());
3496
+ console.log(response);
3487
3497
  return response;
3488
3498
  }
3489
3499
  getStringDate(originDate) {