// {} Librerías e importaciones

// ! Tabla
import Tabla from "../../elementos/tabla.js";

// {}
(() => {

	// ! Declaración de variables
	let
		tabla = {
			instancia: new Tabla({
				columna: {
					peticion: {
						ruta: `${window.aplicacion.enlace}/ejecutar`,
						parametro: { procedimiento: 'p_traer_encabezado_reportes', tipo_reporte: () => tipo_reporte.value }
					}
				},
				datos: {
					peticion: {
						ruta: `${window.aplicacion.enlace}/ejecutar`,
						parametro: {
							procedimiento: 'p_traer_data_credito',
							fecha: () => fecha.value,
							tipo_reporte: () => tipo_reporte.value
						}
					}
				},
			configuracion: {
				dom: `tpB`,
				buttons: [{
					extend: 'excelHtml5',
					className: 'btn buttons-excel',
					text: 'EXCEL <i class="fa-regular fa-file-excel px-1"></i>',
          footer: true
				}]
			}
			})
		}

	// !
	$(formularioReporteDataCredito).on('submit reset', async function(evento) {

		// +
		if (evento.type === 'reset')
			return tabla.instancia.destruir()
		;

		// +
		if (
			(!document.activeElement.type && !['BODY', 'DIV'].includes(document.activeElement.tagName)) ||
			(document.activeElement.type && document.activeElement.type !== 'submit')
		)
			return
		;

		// +
		await tabla.instancia.inicializar()

	})

})()
