ng-easycommerce 0.0.575 → 0.0.576

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.
package/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ # version 0.0.576
2
+ - Se hace merge y estable la version de decidir.
1
3
  # version 0.0.575
2
4
  - Modificación para evitar redirigir al home si el check `isAccountVerificationRequired` no está en true.
3
5
  # version 0.0.574
@@ -34,6 +36,10 @@
34
36
  - Se creó una nueva clase: `PriceRangeFilter.ts` para gestionar el filtro de rango de precio.
35
37
  - Se modificó `core.consts.ts` para incluir el filtro de price_range en la configuración de filtros (filterConfig).
36
38
  - Se actualizó `filters-ec.component.ts` para incluir la lógica de actualización del rango de precio y el progreso de la barra de filtrado de precio.
39
+ # version 0.0.563.beta2
40
+ - ajustes en decidir para tarjetas de debito no salgan cuotas
41
+ # version 0.0.563.beta1
42
+ - ajustes en decidir para añadir cuotas e interes
37
43
  # version 0.0.560
38
44
  - funciones cart y añadir componente sidebar
39
45
  # version 0.0.559
@@ -9,10 +9,10 @@
9
9
  <title>Decidir</title>
10
10
 
11
11
  <script defer>
12
-
12
+ const subtotal = localStorage.getItem('subtotal')
13
+ // console.log(subtotal);
13
14
  const dataDecidirHead = localStorage.getItem('dataDecidir')
14
15
  && JSON.parse(localStorage.getItem('dataDecidir'))
15
-
16
16
  let modoHead = dataDecidirHead?.config?.public_environment || null
17
17
  modoHead && (modoHead == 'prod' && (modoHead = false) || modoHead == 'test' && (modoHead = true))
18
18
  //console.log('modo head',modoHead, dataDecidirHead)
@@ -23,20 +23,20 @@
23
23
  'https://live.decidir.com/static/v2.6.4/decidir.js'
24
24
  );
25
25
  document.head.appendChild(my_awesome_script);
26
-
26
+ const debito = ['31', '105', '106', '108'];
27
27
  //Script para el fingerpoint
28
28
  function makeSessionId(length) {
29
- var result = '';
30
- var characters = 'abcdefghijklmnopqrstuvwxyz0123456789';
31
- var charactersLength = characters.length;
32
- for (var i = 0; i < length; i++) {
33
- result += characters.charAt(Math.floor(Math.random() *
34
- charactersLength));
35
- }
36
- return result;
29
+ var result = '';
30
+ var characters = 'abcdefghijklmnopqrstuvwxyz0123456789';
31
+ var charactersLength = characters.length;
32
+ for (var i = 0; i < length; i++) {
33
+ result += characters.charAt(Math.floor(Math.random() *
34
+ charactersLength));
37
35
  }
38
-
39
- function addStreetAndNro(){
36
+ return result;
37
+ }
38
+
39
+ function addStreetAndNro() {
40
40
  let row = document.createElement('div')
41
41
  row.classList.add('row')
42
42
  /*Columna Calle*/
@@ -48,9 +48,9 @@
48
48
  inputAddress.classList.add('form-control')
49
49
  inputAddress.setAttribute('data-decidir', 'address')
50
50
  inputAddress.setAttribute('type', 'text')
51
- inputAddress.setAttribute('id','address')
52
- inputAddress.setAttribute('name','address')
53
- inputAddress.setAttribute('required','')
51
+ inputAddress.setAttribute('id', 'address')
52
+ inputAddress.setAttribute('name', 'address')
53
+ inputAddress.setAttribute('required', '')
54
54
  let labelAdress = document.createElement('label')
55
55
  labelAdress.setAttribute('for', 'address')
56
56
  labelAdress.textContent = 'Calle:'
@@ -59,8 +59,8 @@
59
59
  colAddress.appendChild(contInput)
60
60
  /*---*/
61
61
 
62
- /*Columna Nro*/
63
- let colNro = document.createElement('div')
62
+ /*Columna Nro*/
63
+ let colNro = document.createElement('div')
64
64
  colNro.classList.add('col-md-3', 'col-12')
65
65
  let contNro = document.createElement('div')
66
66
  contNro.classList.add('form-floating', 'mb-3')
@@ -68,9 +68,9 @@
68
68
  inputNro.classList.add('form-control')
69
69
  inputNro.setAttribute('data-decidir', 'nro')
70
70
  inputNro.setAttribute('type', 'number')
71
- inputNro.setAttribute('id','nro')
72
- inputNro.setAttribute('name','nro')
73
- inputNro.setAttribute('required','')
71
+ inputNro.setAttribute('id', 'nro')
72
+ inputNro.setAttribute('name', 'nro')
73
+ inputNro.setAttribute('required', '')
74
74
  let labelNro = document.createElement('label')
75
75
  labelNro.setAttribute('for', 'nro')
76
76
  labelNro.textContent = 'Nro:'
@@ -83,10 +83,114 @@
83
83
  row.appendChild(colNro)
84
84
  return row
85
85
  }
86
-
86
+
87
+ function addTipoDeInteres() {
88
+ let row = document.createElement('div');
89
+ row.classList.add('row');
90
+
91
+ /* Columna Tipo de Interés */
92
+ let colInteres = document.createElement('div');
93
+ colInteres.classList.add('col-md-6', 'col-12');
94
+ let contSelect = document.createElement('div');
95
+ contSelect.classList.add('form-floating', 'mb-3');
96
+
97
+ let selectInteres = document.createElement('select');
98
+ selectInteres.classList.add('form-select');
99
+ selectInteres.setAttribute('data-decidir', 'tipo_interes');
100
+ selectInteres.setAttribute('id', 'tipo_interes');
101
+ selectInteres.setAttribute('name', 'tipo_interes');
102
+ selectInteres.setAttribute('required', '');
103
+
104
+ // Opción predeterminada
105
+ let optionDefault = document.createElement('option');
106
+ optionDefault.value = '';
107
+ optionDefault.textContent = 'Seleccione cantidad de cuotas';
108
+ optionDefault.disabled = true;
109
+ optionDefault.selected = true;
110
+ selectInteres.appendChild(optionDefault);
111
+
112
+ // Agregar cuotas activas como opciones
113
+ dataDecidirHead.config.public_card_type_configurations.forEach((cuota) => {
114
+ if (cuota.active) {
115
+ let option = document.createElement('option');
116
+ option.value = cuota.dues;
117
+ option.setAttribute('data-interest-rate', cuota.interestRate);
118
+ option.textContent = `${cuota.dues} cuotas (${cuota.interestRate}% interés)`;
119
+ selectInteres.appendChild(option);
120
+ }
121
+ });
122
+
123
+ let labelInteres = document.createElement('label');
124
+ labelInteres.setAttribute('for', 'tipo_interes');
125
+ labelInteres.textContent = 'Tipo de interés:';
126
+
127
+ contSelect.appendChild(selectInteres);
128
+ contSelect.appendChild(labelInteres);
129
+ colInteres.appendChild(contSelect);
130
+ /*---*/
131
+
132
+ /* Columna Total con interés */
133
+ let colRate = document.createElement('div');
134
+ colRate.classList.add('col-md-6', 'col-12');
135
+ let contInputRate = document.createElement('div');
136
+ contInputRate.classList.add('form-floating', 'mb-3');
137
+
138
+ let inputRate = document.createElement('input');
139
+ inputRate.classList.add('form-control');
140
+ inputRate.setAttribute('type', 'text');
141
+ inputRate.setAttribute('id', 'total_con_interes');
142
+ inputRate.setAttribute('name', 'total_con_interes');
143
+ inputRate.setAttribute('readonly', true); // Input de solo lectura
144
+ inputRate.setAttribute('placeholder', 'Total con interés');
145
+
146
+ let labelRate = document.createElement('label');
147
+ labelRate.setAttribute('for', 'total_con_interes');
148
+ labelRate.textContent = 'Total con interés:';
149
+
150
+ contInputRate.appendChild(inputRate);
151
+ contInputRate.appendChild(labelRate);
152
+ colRate.appendChild(contInputRate);
153
+ /*---*/
154
+
155
+ // Agregar columnas al row
156
+ row.appendChild(colInteres);
157
+ row.appendChild(colRate);
158
+
159
+ // Asegurarse de que el subtotal es un número
160
+ let subtotal = parseFloat(localStorage.getItem('subtotal'));
161
+
162
+ if (isNaN(subtotal)) {
163
+ subtotal = 0; // Si no es un número válido, lo dejamos como 0
164
+ }
165
+
166
+ // Evento para cambiar el valor del input según la opción seleccionada
167
+ selectInteres.addEventListener('change', function () {
168
+ let selectedOption = selectInteres.options[selectInteres.selectedIndex];
169
+ let interestRate = parseFloat(selectedOption.getAttribute('data-interest-rate')) || 0;
170
+
171
+ // Calcular el total con el interés aplicado
172
+ let totalConInteres = subtotal * (1 + interestRate / 100);
173
+
174
+ // Formatear el total con separadores de miles
175
+ let totalFormateado = totalConInteres.toLocaleString('es-ES', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
176
+
177
+ // Actualizar el input con el valor calculado y formateado
178
+ if (!isNaN(totalConInteres)) {
179
+ inputRate.value = totalFormateado; // Asignar el valor formateado al input
180
+ } else {
181
+ inputRate.value = ''; // Si el total es NaN, dejamos el campo vacío
182
+ }
183
+ });
184
+
185
+ return row;
186
+ }
187
+
188
+
189
+
190
+
87
191
  let my_copy_script = document.createElement('script');
88
192
  my_copy_script.setAttribute('type', 'text/javascript');
89
-
193
+
90
194
  let infoDecidir = JSON.parse(localStorage.getItem('dataDecidir')) || undefined
91
195
  //console.log(infoDecidir)
92
196
  let urlBase = 'https://h.online-metrix.net/fp/tags.js';
@@ -94,10 +198,10 @@
94
198
  let merchand_id = infoDecidir?.config?.public_merchand_id || 'decidir_agregador'
95
199
  let cybersource = infoDecidir?.config?.public_cybersource || 'deshabilitado'
96
200
  let session_id = makeSessionId(8)
97
-
98
- my_copy_script.setAttribute('src', urlBase+'?org_id='+org_id+'&session_id='+merchand_id+session_id)
201
+
202
+ my_copy_script.setAttribute('src', urlBase + '?org_id=' + org_id + '&session_id=' + merchand_id + session_id)
99
203
  document.head.appendChild(my_copy_script)
100
-
204
+
101
205
  </script>
102
206
  </head>
103
207
 
@@ -158,83 +262,87 @@
158
262
  </div>
159
263
  <div class="card-body">
160
264
  <form action="" method="post" id="formulario">
161
- <fieldset>
265
+ <div>
162
266
  <div id="contForm">
163
- <div class="row">
164
- <div class="col-md-8 col-12">
165
-
166
- <div class="form-floating mb-3">
167
- <input class="form-control" type="text" data-decidir="card_number"
168
- placeholder="XXXXXXXXXXXXXXXX" maxlength="18" value=""
169
- oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');">
170
- <label for="card_number">Numero de tarjeta:</label>
171
- </div>
267
+ <div class="row">
268
+ <div class="col-md-8 col-12">
172
269
 
173
- </div>
174
- <div class="col-md-4 col-12">
270
+ <div class="form-floating mb-3">
271
+ <input class="form-control" type="text" data-decidir="card_number"
272
+ placeholder="XXXXXXXXXXXXXXXX" maxlength="18" value=""
273
+ oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');">
274
+ <label for="card_number">Numero de tarjeta:</label>
275
+ </div>
175
276
 
176
- <div class="form-floating mb-3">
177
- <input class="form-control" type="text" data-decidir="security_code"
178
- placeholder="XXX" maxlength="4" value=""
179
- oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');" />
180
- <label for="security_code">Codigo de seguridad:</label>
181
277
  </div>
278
+ <div class="col-md-4 col-12">
279
+
280
+ <div class="form-floating mb-3">
281
+ <input class="form-control" type="text" data-decidir="security_code"
282
+ placeholder="XXX" maxlength="4" value=""
283
+ oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');" />
284
+ <label for="security_code">Codigo de seguridad:</label>
285
+ </div>
182
286
 
183
- </div>
184
- </div>
185
- <div class="row">
186
-
187
- <div class="col-md-6 col-12">
188
- <div class="form-floating mb-3">
189
- <input class="form-control" type="text" data-decidir="card_expiration_month"
190
- placeholder="MM" maxlength="2" value=""
191
- oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');" />
192
- <label for="card_expiration_month">Mes de vencimiento:</label>
193
287
  </div>
194
288
  </div>
289
+ <div class="row">
290
+
291
+ <div class="col-md-6 col-12">
292
+ <div class="form-floating mb-3">
293
+ <input class="form-control" type="text"
294
+ data-decidir="card_expiration_month" placeholder="MM" maxlength="2"
295
+ value=""
296
+ oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');" />
297
+ <label for="card_expiration_month">Mes de vencimiento:</label>
298
+ </div>
299
+ </div>
195
300
 
196
- <div class="col-md-6 col-12">
197
- <div class="form-floating mb-3">
198
- <input class="form-control" type="text" data-decidir="card_expiration_year"
199
- placeholder="AA" maxlength="2" value=""
200
- oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');" />
201
- <label for="card_expiration_year">Año de vencimiento:</label>
301
+ <div class="col-md-6 col-12">
302
+ <div class="form-floating mb-3">
303
+ <input class="form-control" type="text"
304
+ data-decidir="card_expiration_year" placeholder="AA" maxlength="2"
305
+ value=""
306
+ oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');" />
307
+ <label for="card_expiration_year">Año de vencimiento:</label>
308
+ </div>
202
309
  </div>
203
310
  </div>
204
- </div>
205
- <div class="row">
206
- <div class="col-12 col-md-8">
207
- <div class="form-floating mb-3">
208
- <input class="form-control" type="text" data-decidir="card_holder_name" placeholder="TITULAR" value="" />
209
- <label for="card_holder_name">Nombre del titular:</label>
311
+ <div class="row">
312
+ <div class="col-12 col-md-8">
313
+ <div class="form-floating mb-3">
314
+ <input class="form-control" type="text" data-decidir="card_holder_name"
315
+ placeholder="TITULAR" value="" />
316
+ <label for="card_holder_name">Nombre del titular:</label>
317
+ </div>
210
318
  </div>
211
- </div>
212
- <div class="col-12 col-md-4">
213
- <div class="form-floating mb-3">
214
- <input class="form-control" id="date_of_birth" type="date" data-decidir="date_of_birth" placeholder="" value="" required />
215
- <label for="date_of_birth">Fecha de nacimiento:</label>
319
+ <div class="col-12 col-md-4">
320
+ <div class="form-floating mb-3">
321
+ <input class="form-control" id="date_of_birth" type="date"
322
+ data-decidir="date_of_birth" placeholder="" value="" required />
323
+ <label for="date_of_birth">Fecha de nacimiento:</label>
324
+ </div>
216
325
  </div>
217
326
  </div>
218
- </div>
219
- <div class="row">
220
- <div class="col-md-6 col-12">
221
- <div class="form-floating mb-3">
222
- <select class="form-select" data-decidir="card_holder_doc_type">
223
- <option value="dni">DNI</option>
224
- </select>
225
- <label for="card_holder_doc_type">Tipo de documento:</label>
327
+ <div class="row">
328
+ <div class="col-md-6 col-12">
329
+ <div class="form-floating mb-3">
330
+ <select class="form-select" data-decidir="card_holder_doc_type">
331
+ <option value="dni">DNI</option>
332
+ </select>
333
+ <label for="card_holder_doc_type">Tipo de documento:</label>
334
+ </div>
226
335
  </div>
227
- </div>
228
- <div class="col-md-6 col-12">
229
- <div class="form-floating mb-3">
230
- <input class="form-control" data-decidir="card_holder_doc_number"
231
- placeholder="XXXXXXXXXX" maxlength="9" value=""
232
- oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');">
233
- <label for="card_holder_doc_type">Numero de documento:</label>
336
+ <div class="col-md-6 col-12">
337
+ <div class="form-floating mb-3">
338
+ <input class="form-control" data-decidir="card_holder_doc_number"
339
+ placeholder="XXXXXXXXXX" maxlength="9" value=""
340
+ oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this.value = this.value.replace(/(\..*)\./g, '$1');">
341
+ <label for="card_holder_doc_type">Numero de documento:</label>
342
+ </div>
234
343
  </div>
235
344
  </div>
236
345
  </div>
237
- </div>
238
346
  <div class="w-100 text-center">
239
347
  <div id="loadTokenBtn">
240
348
  <div class="d-grid gap-2">
@@ -247,13 +355,13 @@
247
355
  </div>
248
356
  </div>
249
357
  </div>
250
- </fieldset>
358
+ </fieldset>
251
359
  </form>
252
360
  </div>
253
361
  <div class="w-100 d-flex justify-content-end">
254
362
  <div class="w-50 d-flex justify-content-end">
255
- <img src="../assets/images/decidir-logo.png"
256
- class="card-img-top w-50 logo-pago-seguro-img " alt="...">
363
+ <img src="../assets/images/decidir-logo.png" class="card-img-top w-50 logo-pago-seguro-img "
364
+ alt="...">
257
365
  </div>
258
366
  </div>
259
367
  </div>
@@ -263,22 +371,26 @@
263
371
  </div>
264
372
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
265
373
  integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
266
-
374
+
267
375
  <script defer>
268
- if(cybersource != 'deshabilitado'){
376
+ if (cybersource != 'deshabilitado') {
269
377
  document.getElementById('contForm').appendChild(addStreetAndNro())
378
+
379
+ }
380
+ if ((!debito.includes(dataDecidirHead.config.public_code))){
381
+ document.getElementById('contForm').appendChild(addTipoDeInteres());
270
382
  }
271
383
  let iframe = document.createElement('iframe')
272
384
  iframe.setAttribute('style', 'width: 100px; height: 100px; border: 0; position: absolute; top:-5000px;')
273
- iframe.setAttribute('src','https://h.online-metrix.net/fp/tags?org_id='+org_id+'&session_id='+merchand_id+session_id)
274
-
385
+ iframe.setAttribute('src', 'https://h.online-metrix.net/fp/tags?org_id=' + org_id + '&session_id=' + merchand_id + session_id)
386
+
275
387
  document.body.appendChild(iframe)
276
388
 
277
389
  window.onload = function () {
278
390
 
279
391
  let loadToken = document.querySelector('#loadToken');
280
392
  let loadTokenBtn = document.querySelector('#loadTokenBtn');
281
-
393
+
282
394
  const isLoad = (state) => {
283
395
  loadToken.style.display = !state && 'none' || 'block';
284
396
  loadTokenBtn.style.display = state && 'none' || 'block';
@@ -296,7 +408,7 @@
296
408
  let cybersource = dataDecidir?.config?.public_cybersource && dataDecidir?.config?.public_cybersource == 'deshabilitado'
297
409
  let modo = dataDecidir?.config?.public_environment || null
298
410
 
299
- modo ? (modo == 'prod' ? modo = false : modo = true): (modo = window.location.host.includes('easycommerce'))
411
+ modo ? (modo == 'prod' ? modo = false : modo = true) : (modo = window.location.host.includes('easycommerce'))
300
412
 
301
413
  const decidir = new Decidir(modo && modo ? urlSandbox : urlProduccion);
302
414
  decidir.setPublishableKey(publicApiKey);
@@ -307,27 +419,29 @@
307
419
 
308
420
  const setMessageInStore = (response) => {
309
421
  if (response.hasOwnProperty('message')) {
310
- localStorage.setItem('message',response.message)
422
+ localStorage.setItem('message', response.message)
311
423
  }
312
424
  if (response.hasOwnProperty('subMessage')) {
313
- localStorage.setItem('subMessage',response.subMessage)
425
+ localStorage.setItem('subMessage', response.subMessage)
314
426
  }
315
427
  }
316
428
 
317
429
  const sendToken = (data) => {
318
430
  data['fraud_detection'] = {
319
431
  "device_unique_identifier": session_id
320
- }
432
+ }
321
433
  data['date_of_birth'] = document.getElementById('date_of_birth').value;
322
- console.log('Datos para el envio: ',data)
434
+ console.log('Datos para el envio: ', data)
323
435
  console.log(dataDecidir)
324
- if(dataDecidir?.config?.public_cybersource != 'deshabilitado'){
325
- data['address'] = {
326
- 'name' : document.getElementById('address').value,
327
- 'number' : document.getElementById('nro').value
436
+ if (dataDecidir?.config?.public_cybersource != 'deshabilitado') {
437
+ data['address'] = {
438
+ 'name': document.getElementById('address').value,
439
+ 'number': document.getElementById('nro').value
328
440
  }
441
+ data['subtotal'] = document.getElementById('total_con_interes').value
442
+ data['dues'] = document.getElementById('tipo_interes').value;
329
443
  }
330
-
444
+
331
445
  try {
332
446
  fetch(dataRedirect, {
333
447
  method: 'POST',
@@ -358,10 +472,11 @@
358
472
  }
359
473
  localStorage.removeItem('dataRedirect')
360
474
  localStorage.removeItem('dataDecidir')
475
+ localStorage.removeItem('subtotal')
361
476
  }
362
477
 
363
478
  const sdkResponseHandler = (status, response) => {
364
- console.log('Respuesta: ',response)
479
+ console.log('Respuesta: ', response)
365
480
  if (status != 200 && status != 201) {
366
481
  //Manejo de error: Ver Respuesta de Error
367
482
  processError(response)
@@ -373,7 +488,7 @@
373
488
 
374
489
  const sendForm = (event) => {
375
490
  isLoad(true)
376
- console.log('Formulario: ',form)
491
+ console.log('Formulario: ', form)
377
492
  event.preventDefault();
378
493
  decidir.createToken(form, sdkResponseHandler);
379
494
  return false;
@@ -15660,7 +15660,7 @@
15660
15660
  };
15661
15661
  var DecidirEcComponent = /** @class */ (function (_super) {
15662
15662
  __extends$14(DecidirEcComponent, _super);
15663
- function DecidirEcComponent(renderer, connection, toastrService, consts, cartService, activedRoute, sanitizer, modalService, paramsService) {
15663
+ function DecidirEcComponent(renderer, connection, toastrService, consts, cartService, activedRoute, sanitizer, modalService, paramsService, checkoutService) {
15664
15664
  var _this = _super.call(this) || this;
15665
15665
  _this.renderer = renderer;
15666
15666
  _this.connection = connection;
@@ -15671,6 +15671,7 @@
15671
15671
  _this.sanitizer = sanitizer;
15672
15672
  _this.modalService = modalService;
15673
15673
  _this.paramsService = paramsService;
15674
+ _this.checkoutService = checkoutService;
15674
15675
  _this.method = null;
15675
15676
  _this.total_amount = 0;
15676
15677
  _this.user_data = null;
@@ -15685,6 +15686,7 @@
15685
15686
  sessionStorage.removeItem('state');
15686
15687
  localStorage.removeItem('state');
15687
15688
  localStorage.removeItem('dataRedirect');
15689
+ localStorage.removeItem('subtotal');
15688
15690
  localStorage.removeItem('dataDecidir');
15689
15691
  localStorage.removeItem('message');
15690
15692
  localStorage.removeItem('subMessage');
@@ -15768,6 +15770,7 @@
15768
15770
  this.clearStorageState();
15769
15771
  localStorage.setItem('dataRedirect', this.dataRedirect());
15770
15772
  localStorage.setItem('dataDecidir', JSON.stringify(this.method));
15773
+ localStorage.setItem('subtotal', this.checkoutService.total);
15771
15774
  this.modalRef = this.modalService.show(template, { class: 'modal-xl modal-dialog-centered ', keyboard: false, backdrop: 'static', animated: true });
15772
15775
  this.closeModal = '';
15773
15776
  this.callState();
@@ -15781,7 +15784,8 @@
15781
15784
  { type: router.ActivatedRoute },
15782
15785
  { type: platformBrowser.DomSanitizer },
15783
15786
  { type: modal.BsModalService },
15784
- { type: ParametersService }
15787
+ { type: ParametersService },
15788
+ { type: CheckoutService }
15785
15789
  ]; };
15786
15790
  __decorate$1H([
15787
15791
  core.Input()