/*! StateRestore Foundation styling 2.1.1 for DataTables
 * Copyright (c) SpryMedia Ltd - datatables.net/license
 */
import DataTable from"datatables.net-zf";import StateRestore from"datatables.net-staterestore";let fModal,modalEl,StateRestore=DataTable.StateRestore;function assertModal(){modalEl=modalEl||Dom.c("div").classAdd("reveal reveal-modal dtsr-modal").append(Dom.c("button").classAdd("close-button").attr({type:"button","aria-label":"Close"}).append(Dom.c("span").attr("aria-hidden","true").html("&times;"))).append(Dom.c("div").classAdd("dtsr-modal-header").append(Dom.c("h4"))).append(Dom.c("div").classAdd("dtsr-modal-content"))}function getFoundation(){var t=DataTable.use("foundation"),a=DataTable.use("win");if(t)return t;if(a.Foundation)return a.Foundation;throw new Error("No Foundation library. Set it with `DataTable.use(Foundation);`")}StateRestore.modal=function(t,a,e,o){assertModal();let l=DataTable.use("jq");fModal||(modalEl.appendTo("body"),d=getFoundation(),fModal=new d.Reveal(l(modalEl.get(0)),{closeOnClick:!1}));var d=modalEl.find("div.dtsr-modal-header h4"),n=modalEl.find("div.dtsr-modal-content"),s=modalEl.find("button.close-button");d.text(t),n.append(a),modalEl.classAdd(e),s.on("click.dtsr",()=>{o()}),modalEl.on("click.dtsr",t=>{Dom.s(t.target).classHas("modal")&&o()}),fModal.open(),l(document).on("click.dtsr","div.reveal-overlay",t=>{l(t.target).closest(modalEl.get(0)).length||o()})},StateRestore.modalClean=function(){assertModal();var t=DataTable.use("jq"),a=modalEl.find("div.dtsr-modal-header h4"),e=modalEl.find("div.dtsr-modal-content"),o=modalEl.find("button.close-button");a.text(""),e.empty(),modalEl.classRemove(StateRestore.classes.modal.table),o.off(".dtsr"),modalEl.off(".dtsr"),t(document).off("click.dtsr")},StateRestore.modalClose=function(){assertModal(),fModal&&fModal.close()},util.object.assignDeep(StateRestore.classes,{field:{checkboxOption:"dtsr-check-container",container:"dtsr-field",error:"error",info:"dtsr-info",label:"",value:"",input:{checkbox:"",text:""}},modal:{button:"button",table:"large"},table:{table:"table hover",button:"button secondary small"}});export default DataTable;