(()=>{function p(e,t){let r=new URLSearchParams(window.location.search),n=new URL(e,window.location.origin);return t.forEach(s=>{if(s==="tags"){let a=r.get("tags");a==="news"&&n.searchParams.set("tags","147"),a==="article"&&n.searchParams.set("tags_exclude","147");return}let o=r.get(s);o&&n.searchParams.set(s,o)}),r.has("search")&&n.searchParams.set("search_columns[]","post_title"),n}async function f(e,t,r={}){let n=p(e,t);Object.entries(r).forEach(([a,i])=>{n.searchParams.set(a,i)});let s=await fetch(n);if(!s.ok)return{data:[],headers:s.headers};let o=await s.json();return Array.isArray(o)?{data:o,headers:s.headers}:{data:[],headers:s.headers}}function h(e){return new Date(e).toLocaleDateString("en-CA",{month:"short",year:"numeric"})}function u(e="",t=100){if(e.length>t){let r=e.slice(0,t-3),n=r.lastIndexOf(" ");return(n>0?r.slice(0,n):r).trimEnd()+"..."}return e}function g(e){let t=document.createElement("div");return t.innerHTML=e,t.textContent||t.innerText||""}function R(e,t){let r=e.authors?.[0]?.display_name??"";for(let n of e.authors)if(n.term_id==t){r=n.display_name;break}return{title:e.title.rendered,author:r,excerpt:u(g(e?.excerpt?.rendered??"")),date:h(e.date),link:e.link??"",featuredImage:e._embedded?.["wp:featuredmedia"]?.[0]?.source_url??"/wp-content/uploads/2026/04/NoImage_Placeholder_Square.png"}}var _=8;async function w(e=1){let t=["order","ppma_author","categories","tags","tags_exclude","search"],r={_embed:"true",per_page:String(_),page:String(e)},{data:n,headers:s}=await f("/wp-json/wp/v2/posts",t,r);if(!n||n.length===0)return{resources:[],totalPages:0};let o,a=new URLSearchParams(window.location.search);a.has("ppma_author")&&(o=a.get("ppma_author")||void 0);let i=Number(s.get("X-WP-TotalPages"))||1,c=n.map(d=>R(d,o));return{totalPages:i,resources:c}}function T(e){let t=`${window.location.pathname}?${e.toString()}`;history.pushState({},"",t)}function b(){document.querySelector(".pagination--php")?.classList.add("is-hidden")}function l(e,t){let r=document.createElement("button");return r.className="page-numbers",r.textContent=e,r.onclick=t,r}var E=5;function x(e,t){let r=document.getElementById("resourcesPagination");if(!r)return;if(r.innerHTML="",e<=1){r.classList.add("is-hidden");return}r.classList.remove("is-hidden");let n=window.matchMedia("(max-width: 768px)").matches,s=async o=>{if(o<1||o>e||o===t)return;let a=new URLSearchParams(window.location.search);a.set("page",String(o)),T(a),b(),await m(o)};if(t>1&&r.appendChild(l("\xAB",()=>s(t-1))),n){let o=document.createElement("span");o.className="page-numbers current",o.textContent=`Page ${t} of ${e}`,r.appendChild(o)}else{let o=Math.floor(E/2),a=Math.max(1,t-o),i=Math.min(e,a+E-1);for(let c=a;c<=i;c++)if(c===t){let d=document.createElement("span");d.className="page-numbers current active",d.textContent=String(c),r.appendChild(d)}else r.appendChild(l(String(c),()=>s(c)))}t<e&&r.appendChild(l("\xBB",()=>s(t+1)))}async function y(e){if(typeof e!="function")throw new Error("load requires a function");let t=document.getElementById("loader");try{return t&&(t.style.display="flex"),await e()}catch(r){throw console.error("Error in load callback:",r),r}finally{t&&(t.style.display="none")}}async function m(e=1){let t=document.getElementById("resources__grid"),r=document.getElementById("resourcesPagination"),n=document.getElementById("noResourcesMessage"),{resources:s,totalPages:o}=await y(()=>w(e));if(!(!t||!r||!n)){if(t.innerHTML="",s.length==0){r.classList.add("is-hidden"),n.style.display="flex";return}else n.style.display="none";s.forEach(a=>{let i=document.createElement("a");i.className="blog-card",i.href=a.link,i.innerHTML=`
        <img class="image" src="${a.featuredImage}">
        <div class="content">
            <h3 class="title">${u(a.title,70)}</h3>
            <p class="excerpt">${a.excerpt}</p>

            <div class="author-info">
                <p>${a.author}</p>
                <p>${a.date}</p>
            </div>
        </div>
    `,t.appendChild(i)}),x(o,e)}}window.renderResourceCards=m;})();
//# sourceMappingURL=resources.js.map
