datatables.net-responsive-bs5
Version:
Responsive for DataTables with styling for [Bootstrap5](https://getbootstrap.com/)
4 lines • 1.77 kB
JavaScript
/*! Bootstrap 5 integration for DataTables' Responsive
* © SpryMedia Ltd - datatables.net/license
*/
(t=>{var o,a;"function"==typeof define&&define.amd?define(["jquery","datatables.net-bs5","datatables.net-responsive"],function(e){return t(e,window,document)}):"object"==typeof exports?(o=require("jquery"),a=function(e,d){d.fn.dataTable||require("datatables.net-bs5")(e,d),d.fn.dataTable.Responsive||require("datatables.net-responsive")(e,d)},"undefined"==typeof window?module.exports=function(e,d){return e=e||window,d=d||o(e),a(e,d),t(d,e,e.document)}:(a(window,o),module.exports=t(o,window,window.document))):t(jQuery,window,document)})(function(s,e,l){var u,d=s.fn.dataTable,t=d.Responsive.display,p=t.modal,b=s('<div class="modal fade dtr-bs-modal" role="dialog"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button></div><div class="modal-body"/></div></div></div>'),o=e.bootstrap;return d.Responsive.bootstrap=function(e){o=e},t.modal=function(r){var e;return!u&&o.Modal&&(e=(()=>{var e=d.use("bootstrap");if(e)return e;if(o)return o;throw new Error("No Bootstrap library. Set it with `DataTable.use(bootstrap);`")})(),u=new e.Modal(b[0])),function(e,d,t,o){if(u){var a,n,i=t();if(!1===i)return!1;if(d){if(!s.contains(l,b[0])||e.index()!==b.data("dtr-row-idx"))return null;b.find("div.modal-body").empty().append(i)}else r&&r.header&&(n=(a=b.find("div.modal-header")).find("button").detach(),a.empty().append('<h4 class="modal-title">'+r.header(e)+"</h4>").append(n)),b.find("div.modal-body").empty().append(i),b.data("dtr-row-idx",e.index()).one("hidden.bs.modal",o).appendTo("body"),u.show();return!0}return p(e,d,t,o)}},d});