import 'tailwindcss'; import $ from 'jquery'; import 'laravel-datatables-vite'; import JSZip from 'jszip'; // Required for Excel and CSV export import 'datatables.net'; import 'datatables.net-buttons'; import 'datatables.net-buttons/js/buttons.html5.js'; // For HTML5 export buttons import 'datatables.net-buttons/js/buttons.print.min.js'; // For the print button import 'datatables.net-responsive'; import 'pdfmake/build/pdfmake.js'; // Required for PDF export import 'pdfmake/build/vfs_fonts.js'; // Required for PDF export import './dataTables.tailwindcss.js'; import 'datatables.net-responsive-dt'; // Ensure jQuery is available globally window.$ = window.jQuery = $; window.JSZip = JSZip; // Initialize DataTable var dataTableInstance; var searchTerms ={}; function initializeDataTable() { var dataTableName = document.getElementById('datatable-config').dataset.datatableName; var dataTableColumnsConfig = JSON.parse(document.getElementById('datatable-config').dataset.datatableColumnsConfig); var dataTableHeadersConfig = JSON.parse(document.getElementById('datatable-config').dataset.datatableHeadersConfig); var dataTablesButtonsConfig = JSON.parse(document.getElementById('datatable-config').dataset.datatableButtonsConfig); var dataTablesColumnDefsConfig = JSON.parse(document.getElementById('datatable-config').dataset.datatableColumnDefsConfig); //Strip out HTML from headers when exporting dataTablesButtonsConfig.forEach(function(buttonConfig){ buttonConfig.exportOptions = buttonConfig.exportOptions || {}; for(let key in buttonConfig) { if(key === "exportOptions") { console.log('Export Check'); buttonConfig.exportOptions.format = { header: function (data){ const tempDiv = document.createElement('div'); tempDiv.innerHTML = data; // Remove all