(()=>{"use strict";const t=window.wp.i18n,e=t=>{const e=t.searchBarPlacement,a=t.paginationPlacement,n=t.layoutIconPlacement;return'<"cf-table__top"'+("top"===e||"both"===e?"f":"")+("top"===n||"both"===n?' <"cf-options_info"l <"cf-options" <"cf-options__list"><"cf-options__grid">>>':"")+("top"===a||"both"===a?'<"cf-pagination" lip>':"")+'><"cf-table__main"rt><"cf-table__bottom"'+("bottom"===e||"both"===e?"f":"")+("bottom"===n||"both"===n?'<"cf-options_info"l <"cf-options" <"cf-options__list"><"cf-options__grid">>>':"")+("bottom"===a||"both"===a?'<"cf-pagination" lip>':"")+">"};const a=t=>{const e=t.match(/<[^>]+>([^<]+)<\/[^>]+>/);return e?e[1].replace(/\t/g,"").toLowerCase():""},n=(t,e,n)=>{const o=Date.parse(a(t)),i=Date.parse(a(e));switch(n){case"asc":return o<i?-1:o>i?1:0;case"desc":return o<i?1:o>i?-1:0}};const o=(t,e=[],a)=>{const n=[];return t.forEach(((t,o)=>{"exclude"===a?!e.includes(t.key)&&n.push(o):e.includes(t.key)&&n.push(o)})),n};document.addEventListener("DOMContentLoaded",(function(){var i;(i=jQuery).extend(i.fn.dataTable.ext.type.order,{"date-sort-desc":(t,e)=>n(t,e,"desc")}),i.extend(i.fn.dataTable.ext.type.order,{"date-sort-asc":(t,e)=>n(t,e,"asc")}),(new function(){const n=(0,t.__)("List Layout Icon","catfolders-document-gallery"),s=(0,t.__)("Grid Layout Icon","catfolders-document-gallery"),c=(0,t.__)("Next Button","catfolders-document-gallery"),l=(0,t.__)("Previous Button","catfolders-document-gallery"),r=this;r.svgList=`<svg width="20" height="20" aria-label="${n}" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="20" height="4" rx="2" transform="matrix(-1 0 0 1 20 0)" fill="currentColor"/><rect width="20" height="4" rx="2" transform="matrix(-1 0 0 1 20 8)" fill="currentColor"/><rect width="20" height="4" rx="2" transform="matrix(-1 0 0 1 20 16)" fill="currentColor"/></svg>`,r.svgGrid=`<svg width="20" height="20" aria-label="${s}" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 0C18.8807 0 20 1.11929 20 2.5V6.25C20 7.63071 18.8807 8.75 17.5 8.75H13.75C12.3693 8.75 11.25 7.63071 11.25 6.25V2.5C11.25 1.11929 12.3693 0 13.75 0H17.5Z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6.25 0C7.63071 0 8.75 1.11929 8.75 2.5V6.25C8.75 7.63071 7.63071 8.75 6.25 8.75H2.5C1.11929 8.75 0 7.63071 0 6.25V2.5C0 1.11929 1.11929 0 2.5 0H6.25Z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6.25 11.25C7.63071 11.25 8.75 12.3693 8.75 13.75V17.5C8.75 18.8807 7.63071 20 6.25 20H2.5C1.11929 20 0 18.8807 0 17.5V13.75C0 12.3693 1.11929 11.25 2.5 11.25H6.25Z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 11.25C18.8807 11.25 20 12.3693 20 13.75V17.5C20 18.8807 18.8807 20 17.5 20H13.75C12.3693 20 11.25 18.8807 11.25 17.5V13.75C11.25 12.3693 12.3693 11.25 13.75 11.25H17.5Z" fill="currentColor"/></svg>`,r.svgNext=`<svg width="8" height="14" aria-label="${c}" viewBox="0 0 8 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.5L6 7L1 12.5" stroke="currentColor" stroke-width="1.5"/></svg>`,r.svgPrevious=`<svg width="8" height="14" aria-label="${l}" viewBox="0 0 8 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7 1.5L2 7L7 12.5" stroke="currentColor" stroke-width="1.5"/></svg>`,r.init=function(){r.changeLayoutTabStyle(),r.generateDataTable(),r.hoverLineTable(),r.onClickFileLink(),r.onSearch(),r.addFocusStyling(),r.updateTableAccessibility(),r.onClickDownloadButton()},r.generateDataTable=function(){i(".cf-table").each((function(a,n){i(n).attr("id","catf-dg-table-"+a);const s=n.closest(".cf-app"),c=JSON.parse(s.dataset.json),l=Object.values(JSON.parse(s.dataset.columns)),d=[];l.forEach(((t,e)=>{-1!==i.inArray(t.key,["image","link"])&&d.push(e)}));const f=l.findIndex((t=>t.key===c.orderBy)),u=i(`#${n.id}`),p=i(n).closest(".cf-main"),h=c.limit,g=u.DataTable({order:-1===f?[]:[f,c.orderType.toLowerCase()],destroy:!0,columnDefs:[{type:"natural-nohtml",target:o(l,["size","updated"],"exclude")},{type:"file-size",targets:o(l,["size"],"include")},{orderable:!1,target:0!==d.length?d:[]},{searchable:!1,target:o(l,["link","image"],"include")},{type:"date-sort",targets:o(l,["updated"],"include")}],lengthMenu:[[h,2*h,4*h,8*h,-1],[h,2*h,4*h,8*h,(0,t.__)("All","catfolders-document-gallery")]],language:{searchPlaceholder:(0,t.__)("Search by title…","catfolders-document-gallery"),search:(0,t.__)("Search:","catfolders-document-gallery"),lengthMenu:`<span>${(0,t.__)("Items per page","catfolders-document-gallery")}</span> _MENU_`,info:`_START_ - _END_ ${(0,t.__)("of","catfolders-document-gallery")} _TOTAL_`,paginate:{next:r.svgNext,previous:r.svgPrevious},zeroRecords:(0,t.__)("No matching records found","catfolders-document-gallery"),infoEmpty:(0,t.__)("Showing 0 to 0 of 0 entries","catfolders-document-gallery"),infoFiltered:`(${(0,t.__)("filtered from","catfolders-document-gallery")} _MAX_ ${(0,t.__)("total entries","catfolders-document-gallery")})`,aria:{sortAscending:(0,t.__)(": activate to sort column ascending","catfolders-document-gallery"),sortDescending:(0,t.__)(": activate to sort column descending","catfolders-document-gallery")}},pageLength:h,autoWidth:!1,responsive:!0,sDom:e(c),drawCallback(t){i(".cf-icon").addClass("noLightbox"),i(".cf-column-last a").addClass("noLightbox");const e=this.api().page.info().recordsTotal;var a,n;(function(t,e,a=0){a<t.limit&&e.find(".cf-pagination").css("display","none"),t.libraryIcon.display?e.find(".cf-title img").css("display","block"):e.find(".cf-title img").css("display","none"),t.displayTitle?e.find(".cf-title span").css("display","block"):e.find(".cf-title span").css("display","none"),e.find(".cf-table__top").is(":empty")&&e.find(".cf-table__top").css("display","none"),e.find(".cf-table__bottom").is(":empty")&&e.find(".cf-table__bottom").css("display","none"),t.documentIcons.display?e.find(".cf-icon").removeClass("cf-hidden"):e.find(".cf-icon").addClass("cf-hidden"),t.displayColumns.image&&(e.find("th:first-child").addClass("cf-thumbnail-th"),e.find(".cf-table").addClass("cf-has-thumbnail"))})(c,p,e),a=p,(n=c.displayColumns).image?n.title||n.size||n.updated?(a.find("td:first-child").removeClass("no-margin-bottom"),a.find("td:first-child").addClass("has-margin-bottom"),a.find(".cf-column-last").removeClass("no-margin-top"),a.find(".cf-column-last").addClass("has-margin-top")):n.title||n.size||n.updated||(a.find("td:first-child").removeClass("has-margin-bottom"),a.find("td:first-child").addClass("no-margin-bottom"),a.find(".cf-column-last").removeClass("has-margin-top"),a.find(".cf-column-last").addClass("no-margin-top")):n.image||(n.title||n.size||n.updated)&&(a.find("td:first-child").removeClass("has-margin-bottom"),a.find("td:first-child").addClass("no-margin-bottom"),a.find(".cf-column-last").removeClass("no-margin-top"),a.find(".cf-column-last").addClass("has-margin-top")),(t=>{jQuery.each(t.aoHeader,(function(t,e){jQuery.each(e,(function(t,e){const a=e.cell.ariaLabel.replace(/\s*:\s*/g,": ").trim();jQuery(e.cell).attr("aria-description",a),jQuery(e.cell).removeAttr("aria-label")}))}))})(t)}}).on("search.dt",(function(){0===g.page.info().pages?u.addClass("cf-empty-data"):u.removeClass("cf-empty-data")}));"grid"===c.layout?(p.find(".cf-options__grid").append(r.svgGrid).addClass("active"),p.find(".cf-options__list").append(r.svgList).removeClass("active"),p.find(".cf-table").addClass("cf-table-grid"),p.find(".cf-options__grid").trigger("click"),c.displayColumns.image&&p.find(".cf-table-grid").addClass("cf-has-thumbnail")):(p.find(".cf-options__grid").append(r.svgGrid).removeClass("active"),p.find(".cf-options__list").append(r.svgList).addClass("active"),p.find(".cf-table").removeClass("cf-table-grid"))}))},r.changeLayoutTabStyle=function(){i(document).on("click",".cf-options__list",(function(t){t.preventDefault();const e=i(this).closest(".cf-main");e.find(".cf-options__list").addClass("active"),e.find(".cf-options__grid").removeClass("active"),e.find(".cf-table").removeClass("cf-table-grid"),e.find(".cf-table").removeClass("cf-has-thumbnail")})),i(document).on("click",".cf-options__grid",(function(t){t.preventDefault();const e=i(this).closest(".cf-main");e.find(".cf-options__grid").addClass("active"),e.find(".cf-options__list").removeClass("active"),e.find(".cf-table").addClass("cf-table-grid"),e.find(".cf-table-grid .cf-column-thumbnail").length>0&&e.find(".cf-table").addClass("cf-has-thumbnail")}))},r.hoverLineTable=function(){i(".cf-table tbody tr").on("mouseenter",(function(){i(this).prev("tr").addClass("prev-hover")})).on("mouseleave",(function(){i(this).prev().removeClass("prev-hover")}))},r.onClickFileLink=function(){i(document).on("click",".cf-app a.cf-icon[data-popup]",(function(t){t.preventDefault();const e=t.target,a=+e.dataset.popupwidth,n=+e.dataset.popupheight,o=window.innerWidth/2-a/2,i=window.innerHeight/2-n/2;return window.open(t.target.href,"_blank",`width=${a}, height=${n}, left=${o}, top=${i}`),!1}))},r.onSearch=function(){i('input[type="search"]').on("input",(function(t){if(""===i(this).val())return;const e=i(t.target).attr("aria-controls");i.fn.dataTable.ext.search.push((function(t,n,o,i,s){const c=t.oPreviousSearch.sSearch;return t.nTable.id!==e||!!((t,e)=>{const n=(t=>{const e=[];for(let n=0;n<t.length-1;n++){const o=a(t[n]);""!==o&&e.push(o)}return e})(e);for(let e=0;e<n.length;e++)if(n[e].indexOf(t)>-1)return!0})(c.toLowerCase(),n)}))}))},r.addFocusStyling=function(){const t=function(t){i(t).attr("tabindex","0"),i(t).on("keypress",(function(t){"Enter"===t.key&&i(this).trigger("click")}))};i(".cf-options__list").each((function(){t(i(this))})),i(".cf-options__grid").each((function(){t(i(this))})),i(".dataTables_paginate").attr("tabindex","0"),i(".dataTables_paginate").on("keydown",(function(t){if(i(".dataTables_paginate").is(":focus"))switch(t.key){case"ArrowLeft":i(".dataTables_paginate").find(".paginate_button.previous").trigger("click");break;case"ArrowRight":i(".dataTables_paginate").find(".paginate_button.next").trigger("click")}}))},r.updateTableAccessibility=()=>{const t=()=>{const t=jQuery(".cf-table").hasClass("collapsed");jQuery(".cf-table tr").each((function(){const e=jQuery(this).hasClass("dt-hasChild"),a=jQuery(this).find("td.dtr-control");t?a.attr("aria-expanded",e?"true":"false"):a.removeAttr("aria-expanded")}))};t(),window.innerWidth<=768||jQuery(".cf-table tr td").each((function(){jQuery(this).removeAttr("tabindex")}));const e=new MutationObserver((function(e){e.forEach((function(e){"class"===e.attributeName&&t()}))}));e.observe(document.querySelector(".cf-table"),{attributes:!0}),jQuery(".cf-table tr").each((function(){e.observe(this,{attributes:!0,attributeFilter:["class"]})}))},r.onClickDownloadButton=()=>{const e=e=>{e.addEventListener("click",(function(){(async(e,a)=>{const n=catf_dg.api.rest_url,o=catf_dg.api.rest_nonce,i=await fetch(`${n}/update-download-count`,{method:"PUT",headers:{"Content-Type":"application/json","X-WP-Nonce":o},body:JSON.stringify(a)}).then((e=>{if(e.ok)return e;throw new Error((0,t.__)("Network response was not ok.","catfolders-document-gallery"))}));await i.status})(0,{id_document:i(this).find(".btn-download").data("document-id")})}))};jQuery(".cf-table").find(".cf-column-last").each((function(){e(this)})),new MutationObserver((function(t){t.forEach((function(t){if("childList"===t.type)for(const a of t.addedNodes)if(1===a.nodeType&&a.matches("tr.child")){const t=a.querySelector(".cf-column-last");t&&e(t)}}))})).observe(document.querySelector(".cf-table"),{childList:!0,subtree:!0})}}).init()}))})();