@iamproperty/components 3.7.2 → 3.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/css/components/dialog.css +1 -1
- package/assets/css/components/dialog.css.map +1 -1
- package/assets/css/components/pagination.css +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/table.css +1 -1
- package/assets/css/components/table.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +14 -0
- package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -0
- package/assets/js/components/card/card.component.min.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +18 -0
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -0
- package/assets/js/components/table/table.component.js +1 -0
- package/assets/js/components/table/table.component.min.js +13 -13
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/dynamic.min.js +1 -1
- package/assets/js/modules/table.js +10 -4
- package/assets/js/scripts.bundle.js +3 -3
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/sass/components/dialog.scss +11 -0
- package/assets/sass/components/pagination.scss +2 -1
- package/assets/sass/components/table.scss +6 -4
- package/assets/ts/components/table/table.component.ts +1 -0
- package/assets/ts/modules/table.ts +13 -5
- package/dist/components.es.js +301 -296
- package/dist/components.umd.js +3 -3
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v3.7.
|
|
2
|
+
* iamKey v3.7.3
|
|
3
3
|
* Copyright 2022-2023 iamproperty
|
|
4
4
|
*/(function(C){typeof define=="function"&&define.amd?define(C):C()})(function(){"use strict";var C=e=>(e.classList.add("js-enabled"),(navigator.userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0)&&e.classList.add("ie"),null),at=e=>{var t=function(r){var s=document.querySelector('label[for="'.concat(r.replace("#",""),'"]')),i=document.querySelector(r+" summary"),c=document.querySelector("dialog".concat(r));s instanceof HTMLElement?s.click():i instanceof HTMLElement?i.click():c instanceof HTMLElement&&c.showModal()};return location.hash&&t(location.hash),window.addEventListener("hashchange",function(){t(location.hash)},!1),addEventListener("popstate",a=>{if(a&&a.state.type&&a.state.type=="pagination"){var r=document.querySelector("#".concat(a.state.form)),s=document.querySelector("#".concat(a.state.form," [data-pagination]"));s?s.value=a.state.page:r.innerHTML+='<input name="page" type="hidden" data-pagination="true" value="'.concat(a.state.page,'" />'),r.dispatchEvent(new Event("submit"))}}),null},rt=function(t){return typeof t!="string"?!1:!isNaN(t)&&!isNaN(parseFloat(t))},st=(e,t)=>String(e).padStart(t,"0"),it=e=>e.charAt(0).toUpperCase()+e.slice(1);class ot{constructor(t){document.body.classList.contains("youtubeLoaded")?t.addEventListener("click",function(a){for(var r=a.target;r&&r!=this;r=r.parentNode)if(r.matches("a")){a.preventDefault(),V(r);break}},!1):this.loadScripts(t,this.createEmbed)}loadScripts(t){return new Promise((a,r)=>{var s=new Image;s.onload=function(){var i=document.createElement("script");i.src="https://www.youtube.com/iframe_api";var c=document.getElementsByTagName("script")[0];c.parentNode.insertBefore(i,c),document.body.classList.add("youtubeLoaded"),a(!0),i.onload=()=>{t.addEventListener("click",function(o){console.log("click"),o&&o.target instanceof HTMLElement&&o.target.closest("a")&&(o.preventDefault(),V(o.target.closest("a")))},!1)}},s.onerror=function(){r(!1)},s.src="https://youtube.com/favicon.ico"})}}var V=function(t){typeof window.player<"u"&&typeof window.player.pauseVideo=="function"&&window.player.pauseVideo();var a=t.getAttribute("data-id"),r=t.getAttribute("id");if(typeof r>"u"||r==null){var s=String.fromCharCode(65+Math.floor(Math.random()*26));r=s+Date.now(),t.setAttribute("id",r)}function i(){window.player=new YT.Player(r,{height:"100%",width:"100%",videoId:a,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:c,onStateChange:d}})}i();function c(n){n.target.playVideo()}var o=!1;function d(n){if(n.data==YT.PlayerState.PLAYING&&!o){var l=document.getElementById(r);l.classList.add("player-ready"),o=!0}}},nt=e=>(e.addEventListener("click",t=>{if(t&&t.target instanceof HTMLElement&&t.target.closest("[data-modal]")){var a=t.target.closest("[data-modal]"),r=a.hasAttribute("data-modal")?a.getAttribute("data-modal"):a.getAttribute("data-filter"),s=document.querySelector("dialog#".concat(r));ct(s),s.querySelector(":scope > .mh-lg > form:last-child > button:last-child, :scope > .mh-lg > button:last-child")&&!s.classList.contains("dialog--multi")&&s.addEventListener("cancel",L=>{L.preventDefault()});var i=s.querySelector(".youtube-embed a");i&&V(i),s.showModal(),s.focus(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:r})}if(t&&t.target instanceof HTMLElement&&t.target.closest("button.dialog__close")){var c=t.target.closest("dialog[open]");t.preventDefault(),c.close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((L,q)=>{L.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:c.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest('button[formmethod="dialog"]')){var o=t.target.closest("dialog[open]");Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((L,q)=>{L.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:o.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest("dialog[open]")){var d=t.target.closest("dialog[open]");if(!d.querySelector(":scope > .mh-lg > form:last-child > button:last-child, :scope > .mh-lg > button:last-child")||d.classList.contains("dialog--multi")){var n=d.getBoundingClientRect();(t.clientX<n.left||t.clientX>n.right||t.clientY<n.top||t.clientY>n.bottom)&&(d.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:d.getAttribute("id")}))}}if(t&&t.target instanceof HTMLElement&&t.target.closest(".dialog__wrapper > button")){var l=t.target.closest(".dialog__wrapper > button"),f=t.target.closest(".dialog__wrapper > button").parentNode,h="openPopover",b=f.querySelector(":scope > dialog");if(document.querySelector("dialog[open]")&&document.querySelector("dialog[open]")!=b&&document.querySelector("dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((L,q)=>{L.classList.remove("active")}),b.hasAttribute("open"))b.close(),h="closePopover",b.removeAttribute("style"),l.classList.remove("active");else{b.show(),l.classList.add("active");var u=l.getBoundingClientRect(),m=u.top,v=u.left;if(l.closest("iam-table")){var A=l.closest("iam-table").parentNode.getBoundingClientRect();m-=A.top,v-=A.left}b.classList.contains("dialog--fix")&&b.setAttribute("style","position:fixed;top: ".concat(m,"px; left: ").concat(v,"px; margin: 3rem 0 0 0;"))}var S=b.getBoundingClientRect(),y=S.bottom-window.scrollY,g=window.innerHeight-window.scrollY;if(y>g){var M=b.getAttribute("style");b.setAttribute("style",M+"transform: translate(0, calc(-100% - 4rem))")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:h,id:l.textContent})}}),null),ct=e=>{if(e.classList.contains("dialog--multi")&&!e.querySelector(":scope > .steps")&<(e),!e.querySelector(":scope > .mh-lg")&&!e.classList.contains("dialog--multi")){e.innerHTML='<div class="mh-lg">'.concat(e.innerHTML,"</div>");var t=e.querySelector(".mh-lg"),a=e.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(a){var r=a.previousSibling;t.before(a),r&&a.before(r)}}e.querySelector(":scope > button:first-child")||(e.innerHTML='<button class="dialog__close">Close</button>'.concat(e.innerHTML))},lt=e=>{var t="",a=Array.from(e.querySelectorAll("fieldset[data-title]"));a.forEach((r,s)=>{t+='<button data-title="'.concat(r.getAttribute("data-title"),'" type="button" class="').concat(s==0?"active":"",'">').concat(r.getAttribute("data-title"),"</button>");var i=document.createElement("div");i.classList.add("btn--wrapper"),r.appendChild(i),s!=0&&(i.innerHTML+='<button data-title="'.concat(a[s-1].getAttribute("data-title"),'" class="btn btn-secondary mb-0" type="button">Previous</button>')),s!=a.length-1&&(i.innerHTML+='<button data-title="'.concat(a[s+1].getAttribute("data-title"),'" class="btn btn-primary mb-0" type="button">Next</button>')),s==a.length-1&&(i.innerHTML+='<button class="btn btn-primary mb-0">Submit</button>')}),e.innerHTML='<div class="steps bg-primary">'.concat(t,"</div>").concat(e.innerHTML),e.addEventListener("click",r=>{if(r&&r.target instanceof HTMLElement&&r.target.closest("button[data-title]")){var s=r.target.closest("button[data-title]"),i=e.querySelector('fieldset[data-title="'.concat(s.getAttribute("data-title"),'"]')),c=e.querySelector('.steps button[data-title="'.concat(s.getAttribute("data-title"),'"]'));Array.from(e.querySelectorAll("button")).forEach((o,d)=>{o.classList.remove("active")}),Array.from(e.querySelectorAll("fieldset")).forEach((o,d)=>{o.classList.remove("active")}),c.classList.add("active"),i.classList.add("active")}return null})};function dt(){window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Pageview",pageTitle:document.title}),document.addEventListener("click",e=>{e&&e.target instanceof HTMLElement&&e.target.closest("[open] summary")?window.dataLayer.push({event:"closeDetails",detailsTitle:e.target.closest("summary").textContent}):e&&e.target instanceof HTMLElement&&e.target.closest("summary")&&window.dataLayer.push({event:"openDetails",detailsTitle:e.target.closest("summary").textContent}),e&&e.target instanceof HTMLElement&&e.target.closest("a")&&window.dataLayer.push({event:"linkClicked",linkText:e.target.closest("a").hasAttribute("title")?e.target.closest("a").getAttribute("title"):e.target.closest("a").textContent,class:e.target.closest("a").hasAttribute("class")?e.target.closest("a").getAttribute("class"):"",href:e.target.closest("a").getAttribute("href")}),e&&e.target instanceof HTMLElement&&e.target.closest("button")&&window.dataLayer.push({event:"buttonClicked",buttonText:e.target.closest("button").textContent,class:e.target.closest("button").hasAttribute("class")?e.target.closest("button").getAttribute("class"):""})})}var ut=e=>{if(Array.from(e.querySelectorAll("details")).forEach((a,r)=>{a.addEventListener("mouseenter",function(s){window.matchMedia("(min-width: 62em)").matches&&a.setAttribute("open","true")},!1),a.addEventListener("mouseleave",function(s){window.matchMedia("(min-width: 62em)").matches&&a.removeAttribute("open")},!1)}),"IntersectionObserver"in window){var t=new IntersectionObserver(a=>{var[r]=a;return r.target.classList.toggle("is-stuck",r.intersectionRatio<1)},{threshold:[1]});t.observe(e)}};function ht(e){var t,a=e.querySelector(".testimonial__images"),r=a.querySelectorAll("img").length;if(r==1)return!1;e.classList.add("testimonial--multi");var s=function(c){var o=e.querySelector(".btn-next"),d=e.querySelector(".btn-prev");o.setAttribute("data-go",c+1),d.setAttribute("data-go",c-1),o.removeAttribute("disabled"),d.removeAttribute("disabled"),c==1?d.setAttribute("disabled",!0):c==r&&o.setAttribute("disabled",!0)};a.addEventListener("scroll",function(i){clearTimeout(t),t=setTimeout(function(){var c=a.scrollWidth,o=a.scrollHeight,d=a.scrollLeft,n=a.scrollTop,l=Math.round(d/c*r)+1;d==0&&n!=0&&(l=Math.round(n/o*r)+1),e.setAttribute("data-show",l),s(l)},300)},!1),e.addEventListener("click",function(i){for(var c=i.target;c&&c!=this;c=c.parentNode)if(c.matches("[data-go]")){var o=parseInt(c.getAttribute("data-go")),d=0,n=0,l=a.scrollWidth,f=a.scrollHeight;l>f?n=Math.floor(l*((o-1)/r)):d=Math.floor(f*((o-1)/r)),a.scroll({top:d,left:n,behavior:"smooth"});break}},!1)}function ft(e){var t,a=e.querySelector(".carousel__inner"),r=e.querySelectorAll(".carousel__item").length;e.getAttribute("data-cols");var s=e.getAttribute("data-sm-cols"),i=e.getAttribute("data-md-cols");e.querySelector(".carousel__controls a").classList.add("active"),a.addEventListener("scroll",function(c){clearTimeout(t),t=setTimeout(function(){var o=a.clientWidth,d=a.scrollWidth,n=a.scrollLeft,l=Math.round(n/d*r)+1,f=e.querySelector(".carousel__item:last-child").offsetLeft;Array.from(e.querySelectorAll(".carousel__controls a")).forEach((h,b)=>{h.classList.remove("active")}),e.querySelector(".control-"+l).classList.add("active"),l==1?e.querySelector(".btn-prev").setAttribute("disabled","disabled"):e.querySelector(".btn-prev").removeAttribute("disabled"),a.scrollLeft+o>f?e.querySelector(".btn-next").setAttribute("disabled","disabled"):e.querySelector(".btn-next").removeAttribute("disabled")},100)},!1),e.addEventListener("click",function(c){for(var o=c.target;o&&o!=this;o=o.parentNode)if(o.matches(".carousel__controls a")){c.preventDefault(),Array.from(e.querySelectorAll(".carousel__controls a")).forEach((n,l)=>{n.classList.remove("active")}),o.classList.add("active");var d=document.querySelector(o.getAttribute("href"));a.scroll({top:0,left:d.offsetLeft,behavior:"smooth"});break}},!1),e.addEventListener("click",function(c){for(var o=c.target;o&&o!=this;o=o.parentNode)if(o.matches(".btn-next, .btn-prev")){c.preventDefault();var d=o.classList.contains("btn-prev")?a.scrollLeft-a.clientWidth:a.scrollLeft+a.clientWidth;a.scroll({top:0,left:d,behavior:"smooth"});break}},!1),r==1&&e.classList.add("hide-btns"),s>=r&&e.classList.add("hide-sm-btns"),i>=r&&e.classList.add("hide-md-btns")}function mt(e){e.addEventListener("change",function(t){var a=parseInt(e.querySelector("[data-min] select,[data-min] input").value),r=parseInt(e.querySelector("[data-max] select,[data-max] input").value);Array.from(e.querySelectorAll("[data-min] input")).forEach((s,i)=>{s.setAttribute("max",r)}),Array.from(e.querySelectorAll("[data-max] input")).forEach((s,i)=>{s.setAttribute("min",a)}),Array.from(e.querySelectorAll("[data-min] select option")).forEach((s,i)=>{parseInt(s.getAttribute("value"))>r?s.classList.add("d-none"):s.classList.remove("d-none")}),Array.from(e.querySelectorAll("[data-max] select option")).forEach((s,i)=>{parseInt(s.getAttribute("value"))<a?s.classList.add("d-none"):s.classList.remove("d-none")})},!1)}function bt(e){e.addEventListener("change",function(t){if(e.matches("[data-value-if]")){var a=e.getAttribute("data-redirect"),r=e.getAttribute("data-value-if");e.value==r&&(document.location.href=a)}else typeof e.value<"u"&&(document.location.href=e.value)},!1)}function vt(e){var t=e.querySelector(".row"),a=t.cloneNode(!0),r=e.querySelector("[data-add]");e.addEventListener("click",function(s){for(var i=s.target;i&&i!=this;i=i.parentNode){if(i.matches("[data-add]")){var c=a.cloneNode(!0);e.insertBefore(c,i),r.matches("[data-maxfiles]")&&Array.from(e.querySelectorAll(":scope > .row")).length>=r.dataset.maxfiles&&r.setAttribute("disabled","disabled");break}if(i.matches("[data-delete]")){var o=i.closest(".row");o.remove(),r.matches("[data-maxfiles]")&&Array.from(e.querySelectorAll(":scope > .row")).length<r.dataset.maxfiles&&r.removeAttribute("disabled");break}}},!1)}function pt(e){Array.from(e.querySelectorAll("[data-input-range]")).forEach((t,a)=>{mt(t)}),Array.from(e.querySelectorAll("[data-redirect]")).forEach((t,a)=>{bt(t)}),Array.from(e.querySelectorAll(".multiple-file-uploads")).forEach((t,a)=>{vt(t)}),e.addEventListener("change",function(t){for(var a=t.target;a&&a!=this;a=a.parentNode)if(a.matches('[type="file"][data-filesize]')&&a.files&&a.files[0]){var r=a.dataset.filesize;a.files[0].size>r&&(a.value="",alert("File too large"));break}},!1),e.addEventListener("change",function(t){Array.from(e.querySelectorAll("select[data-activeif][data-equals],input[data-activeif][data-equals]")).forEach((a,r)=>{var s=a.closest("[data-group]")?a.closest("[data-group]"):e,i=a.dataset.activeif,c=a.dataset.equals,o=s.querySelector('select[data-id="'.concat(i,'"],input[data-id="').concat(i,'"]'));o.value==c?a.removeAttribute("disabled"):(a.setAttribute("disabled","disabled"),a.value="")}),Array.from(e.querySelectorAll(".form-control__wrapper[data-displayif][data-equals]")).forEach((a,r)=>{var s=a.closest("[data-group]")?a.closest("[data-group]"):e,i=a.dataset.activeif,c=a.dataset.equals,o=s.querySelector('select[data-id="'.concat(i,'"],input[data-id="').concat(i,'"]'));o.value==c?a.classList.remove("d-none"):a.classList.add("d-none")})},!1)}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"header"});class gt extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",a='@import "'.concat(t,'/css/components/header.css";'),r=document.createElement("template");r.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -55,8 +55,8 @@
|
|
|
55
55
|
</ul>`),a.innerHTML+=`<div class="d-sm-none text-center">
|
|
56
56
|
<span class="d-block pb-2">You've viewed `.concat(c," of ").concat(i,` results</span>
|
|
57
57
|
<a href="?show=`).concat(parseInt(c)+parseInt(o),'" class="btn btn-primary w-100 m-0" data-show="').concat(parseInt(c)+parseInt(o),`">Load more results</a>
|
|
58
|
-
</div>`),!0},Et=function(e,t,a,r){function s(i){return i instanceof a?i:new a(function(c){c(i)})}return new(a||(a=Promise))(function(i,c){function o(l){try{n(r.next(l))}catch(f){c(f)}}function d(l){try{n(r.throw(l))}catch(f){c(f)}}function n(l){l.done?i(l.value):s(l.value).then(o,d)}n((r=r.apply(e,t||[])).next())})},X=e=>{var t=Array.from(e.querySelectorAll("thead th")),a=Array.from(e.querySelectorAll("tbody tr"));a.forEach((r,s)=>{var i=Array.from(r.querySelectorAll("th, td")),c=["0","low","medium","high","unknown","n/a","pending","verified","incomplete","completed","requires approval"];i.forEach((o,d)=>{var n=t[d];if(typeof n<"u"){var l=document.createElement("div");l.innerHTML=n.innerHTML;var f=l.textContent||l.innerText||"";o.setAttribute("data-label",f),n.hasAttribute("data-td-class")&&o.setAttribute("class",n.getAttribute("data-td-class")),n.hasAttribute("data-format")&&(o.setAttribute("data-format",n.getAttribute("data-format")),o.innerHTML=F(n.getAttribute("data-format"),o.textContent.trim())),c.includes(o.textContent.trim().toLowerCase())&&o.setAttribute("data-content",o.textContent.trim().toLowerCase())}})})},Tt=e=>{var t=0;return Array.from(e.querySelectorAll("tr")).forEach((a,r)=>{var s=window.getComputedStyle(document.querySelector("html")),i=a.querySelector(":scope > *:last-child > *:first-child");if(i){var c=i.offsetWidth/parseFloat(s.fontSize);c+=1.5,t=t>c?t:c}var o=a.offsetHeight/parseFloat(s.fontSize);a.style.setProperty("--row-height","".concat(o,"rem"))}),t},Mt=e=>{if(e.closest(".table--fullwidth")||e.querySelectorAll("thead tr th").length<4)return!1;Array.from(e.querySelectorAll("tbody tr")).forEach((t,a)=>{var r=t.querySelector(":scope > :is(td,th):first-child"),s=r.textContent;if(s!="")r.innerHTML='<span class="td__content">'.concat(s,'</span><button type="button" class="d-none">').concat(s,"</button>");else{var i=t.querySelector(":scope > :is(td,th):nth-child(2)"),c=i.textContent;i.innerHTML='<span class="td__content">'.concat(c,'</span><button type="button" class="d-none">').concat(c,"</button>")}})},_t=e=>{e.addEventListener("click",t=>{if(t&&t.target instanceof HTMLElement&&t.target.closest("tr > :is(td,th):first-child button")){var a=t.target.closest("tr > :is(td,th):first-child button"),r=a.parentNode.closest("tr");r.getAttribute("data-view")=="full"?r.setAttribute("data-view","default"):r.setAttribute("data-view","full"),a.blur()}})},G=(e,t)=>{var a=t.querySelector("[data-search]");if(!a)return!1;var r=a.getAttribute("id"),s=a.getAttribute("data-search").split(","),i=a.parentNode,c={};s.forEach((o,d)=>{Array.from(e.querySelectorAll('td[data-label="'+o.trim()+'"]')).forEach((n,l)=>{n.querySelector(".td__content")?c[n.querySelector(".td__content").textContent]=n.querySelector(".td__content").textContent:c[n.textContent]=n.textContent})}),a.setAttribute("list","".concat(r,"_list")),a.setAttribute("autocomplete","off"),i.querySelector("datalist")||(i.innerHTML+='<datalist id="'.concat(r,'_list"></datalist>')),i.querySelector("datalist").innerHTML="".concat(Object.keys(c).map(o=>'<option value="'.concat(o,'"></option>')).join(""))},Ht=(e,t,a,r,s)=>{var i,c=function(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(t.hasAttribute("data-ajax")){if(!l){var f=t.querySelector("[data-pagination]");f.value=1,r.setAttribute("data-page",1)}Z(e,t,a,r)}else t.hasAttribute("data-submit")?t.submit():(Q(e,t,r),k(r,a),Y(e,t))};t.addEventListener("keyup",n=>{clearTimeout(i),n&&n.target instanceof HTMLElement&&n.target.closest("[data-search]")&&(i=setTimeout(function(){c()},500))}),t.addEventListener("change",n=>{clearTimeout(i),n&&n.target instanceof HTMLElement&&n.target.closest("[data-sort]")&&(t.hasAttribute("data-submit")||J(e,t,s),c()),n&&n.target instanceof HTMLElement&&n.target.closest("[data-search]")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-filter]")&&n.target.closest("form .dialog__wrapper > dialog")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-filter]")&&!n.target.closest("form dialog")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-show]")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-mimic]")&&c()}),t.addEventListener("click",n=>{if(clearTimeout(i),n&&n.target instanceof HTMLElement&&n.target.closest('dialog button:not([type="button"])')){var l=n.target.closest('dialog button:not([type="button"])'),f=l.closest("dialog");f.close()}n&&n.target instanceof HTMLElement&&n.target.closest(".dialog__close")&&(n.preventDefault(),n.stopPropagation()),n&&n.target instanceof HTMLElement&&n.target.closest("[data-clear]")&&(t.reset(),t.hasAttribute("data-submit")||J(e,t,s),c())}),t.addEventListener("submit",n=>{clearTimeout(i),t.hasAttribute("data-submit")||n.preventDefault(),c()}),t.addEventListener("force",n=>{c()}),t.addEventListener("paginate",n=>{c(!0)});var o=[],d=[];Array.from(t.querySelectorAll("[data-mimic]")).forEach((n,l)=>{var f=n.getAttribute("data-mimic");Array.from(document.querySelectorAll('[name="'.concat(f,'"]'))).forEach((h,b)=>{var u=h.closest("form");o.includes(u)||o.push(u),d.includes(f)||d.push(f)})}),o.forEach((n,l)=>{var f=function(){var b=[],u=new FormData(n);for(var[m,v]of u)document.querySelector('[data-mimic="'.concat(m,'"]'))&&!b.includes(m)?(b.push(m),document.querySelector('[data-mimic="'.concat(m,'"]')).value=v):document.querySelector('[data-mimic="'.concat(m,'"]'))&&(document.querySelector('[data-mimic="'.concat(m,'"]')).value+=","+v);for(var A of b){var S=new Event("force");t.dispatchEvent(S)}for(var y of d)if(!u.has(y)&&n.querySelector('[name="'.concat(y,'"]'))){document.querySelector('[data-mimic="'.concat(y,'"]')).value="";var g=new Event("force");t.dispatchEvent(g)}};n.addEventListener("force",h=>{f()}),n.addEventListener("change",h=>{f()})})},J=(e,t,a)=>{if(t.getAttribute("data-ajax"))return!1;var r=e.querySelector("tbody"),s=t.querySelector("[data-sort]"),i=s.querySelector("option:nth-child(".concat(s.selectedIndex+1,")")),c=i.getAttribute("data-sort"),o=i.getAttribute("data-order"),d=i.getAttribute("data-format");if(!c)return r.innerHTML=a.innerHTML,X(e),!1;var n=[];["asc","desc","descending"].includes(o)||(n=o.split(","));var l=[];Array.from(r.querySelectorAll("tr")).forEach((h,b)=>{var u=h.querySelector('td[data-label="'+c+'"], th[data-label="'+c+'"]').textContent.trim();n.length&&n.includes(u)&&(u=n.indexOf(u)),rt(u)&&(u=st(u,10)),d&&d=="date"&&(u=new Date(u));var m={index:u,row:h};l.push(m)}),l.sort((h,b)=>h.index>b.index?1:-1),(o=="descending"||o=="desc")&&(l=l.reverse());var f="";l.forEach((h,b)=>{f+=h.row.outerHTML}),r.innerHTML=f},Q=(e,t,a)=>{e.classList.remove("table--filtered");var r=[],s=[],i=0,c=t.querySelector("[data-pagination]")?parseInt(t.querySelector("[data-pagination]").value):1,o=t.querySelector("[data-show]")?parseInt(t.querySelector("[data-show]").value):15;Array.from(e.querySelectorAll("tbody tr")).forEach((u,m)=>{u.classList.remove("filtered"),u.classList.remove("filtered--matched"),u.classList.remove("filtered--show"),u.removeAttribute("data-filtered-by")});var d=Array.from(t.querySelectorAll("[data-filter]"));if(d.forEach((u,m)=>{if(!(u.type=="radio"&&!u.checked)&&!(u.type=="checkbox"&&!u.checked)){if(u.getAttribute("data-filter")=="multi")for(var[v,A]of Object.entries(JSON.parse(u.value)))r[u.getAttribute("data-filter")].push(A);else if(u&&u.value){var S=u.getAttribute("data-filter");r[S]||(r[S]=new Array),r[S].push(u.value)}}}),t.querySelector("[data-search]")){var n=t.querySelector("[data-search]"),l=t.querySelector("[data-search]").getAttribute("data-search").split(",");l.forEach((u,m)=>{s.push({column:"".concat(u.trim()),value:"".concat(n.value)})})}Array.from(t.querySelectorAll("[data-filter-count]")).forEach((u,m)=>{u.innerHTML=""}),r.length&&Array.from(t.querySelectorAll("[data-filter-count]")).forEach((u,m)=>{u.innerHTML+="(".concat(r.length,")")}),e.classList.add("table--filtered");var f=function(m,v){Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((A,S)=>{var y=!1;v.forEach((g,M)=>{var L=A.querySelector('[data-label="'.concat(m,'"]'));if(g&&g=="$today")g=F("date",new Date);else if(g&&g=="$yesterday"){var q=new Date;q.setDate(q.getDate()-1),g=F("date",q)}else if(g&&(g=="$thisWeek"||g=="$lastWeek")){var p=new Date,_=new Date(p.setDate(p.getDate()-(p.getDay()-1))),w=new Date(p.setDate(p.getDate()-p.getDay()+7)),x=new Date(L.textContent.toLowerCase());if(p.setHours(0,0,0,0),_.setHours(0,0,0,0),w.setHours(0,0,0,0),x.setHours(0,0,0,0),g=="$thisWeek")y=x>=_&&x<=w;else{var T=new Date(_.setDate(_.getDate()-7)),R=new Date(w.setDate(w.getDate()-7));T.setHours(0,0,0,0),R.setHours(0,0,0,0),y=x>=T&&x<=R}}else if(g&&g=="$thisMonth"){var N=new Date,D=N.getFullYear(),H=N.getMonth(),z=new Date(D,H,1),B=new Date(D,H+1,0),E=new Date(L.textContent.toLowerCase());z.setHours(0,0,0,0),B.setHours(0,0,0,0),E.setHours(0,0,0,0),y=E>=z&&E<=B}else if(g&&g=="$lastMonth"){var I=new Date,P=I.getFullYear(),j=I.getMonth(),O=new Date(P,j-1,1),et=new Date(P,j,0),U=new Date(L.textContent.toLowerCase());O.setHours(0,0,0,0),et.setHours(0,0,0,0),U.setHours(0,0,0,0),y=U>=O&&U<=et}L&&L.textContent.toLowerCase().includes(g.toLowerCase())&&(y=!0)}),y||(A.classList.add("filtered"),A.setAttribute("data-filtered-by",m))})};for(var[h,b]of Object.entries(r))f(h,b);Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((u,m)=>{var v=!(s.length>0&&s[0].value.length>=3);s.forEach((A,S)=>{var y=u.querySelector('[data-label="'.concat(A.column,'"]'));y&&A.value.length>=3&&y.textContent.toLowerCase().includes(A.value.toLowerCase())&&(v=!0)}),v||u.classList.add("filtered")}),Array.from(e.querySelectorAll("tbody tr:not(.filtered")).forEach((u,m)=>{i++,u.classList.add("filtered--matched");var v=Math.ceil(i/o);v==parseInt(c)&&u.classList.add("filtered--show")}),a&&(a.setAttribute("data-page",c),a.setAttribute("data-pages",Math.ceil(i/o)),a.setAttribute("data-total",i),a.setAttribute("data-show",o))},Y=(e,t,a)=>{var r=Array.from(t.querySelectorAll("[data-query]"));r.forEach((s,i)=>{var c=s.getAttribute("data-query"),o;if(c=="total")a.hasAttribute("data-total")?o=a.getAttribute("data-total"):o=(e.classList.contains("table--filtered"),e.querySelectorAll("tbody tr").length);else if(!c.includes(" == ")&&c.includes(" & ")){var d=c.split(" & "),n="";d.forEach(h=>{n+=':not([data-filtered-by="'.concat(h,'"])')}),o=Array.from(e.querySelectorAll("tbody tr".concat(n))).length}else if(!c.includes(" == "))o=Array.from(e.querySelectorAll('tbody tr:not([data-filtered-by="'.concat(c,'"])'))).length;else if(c.includes(" && ")){var l=c.split(" && ");o=Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).filter(function(h){var b=!0;for(var[u,m]of Object.entries(l)){var v=m.split(" == ");(!h.querySelector('td[data-label="'.concat(v[0],'"]'))||h.querySelector('td[data-label="'.concat(v[0],'"]')).textContent!="".concat(v[1]))&&(b=!1)}return b}).length}else{var f=c.split(" == ");o=Array.from(e.querySelectorAll('tbody tr.filtered--matched td[data-label="'.concat(f[0],'"], tbody tr[data-filtered-by="').concat(f[0],'"] td[data-label="').concat(f[0],'"]'))).filter(function(h){return h.textContent===f[1]}).length}s.hasAttribute("data-total")?s.setAttribute("data-total",o):s.innerHTML=o})},Ct=function(t,a,r,s){r.addEventListener("click",i=>{if(i&&i.target instanceof HTMLElement&&i.target.closest("[data-page]")){i.preventDefault();var c=a.querySelector("[data-pagination]"),o=i.target.closest("[data-page]").getAttribute("data-page");if(c.value=o,s.setAttribute("data-page",o),a.dispatchEvent(new Event("paginate")),t.hasAttribute("data-show-history")){var d=new URL(location);d.searchParams.set("page",o),history.pushState({type:"pagination",form:a.getAttribute("id"),page:o},"",d)}}if(i&&i.target instanceof HTMLElement&&i.target.closest("[data-show]")){i.preventDefault();var n=a.querySelector("[data-show]"),l=i.target.closest("[data-show]").getAttribute("data-show");n.value=l,s.setAttribute("data-show",l),a.dispatchEvent(new Event("submit"))}})},kt=(e,t)=>{if(!e)return!1;e.addEventListener("click",a=>{Rt(t)})},Rt=function(t){for(var a=[],r=t.getElementsByTagName("tr"),s=0;s<r.length;s++){for(var i=r[s].querySelectorAll("td,th"),c=[],o=0;o<i.length;o++)c.push('"'.concat(i[o].textContent,'"'));a.push(c.join(","))}a=a.join(`
|
|
59
|
-
`);var d=new Blob([a],{type:"text/csv"}),n=document.createElement("a");n.download="export.csv";var l=window.URL.createObjectURL(d);n.href=l,n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n)},K=function(t,a,r,s){if(X(t),Mt(t),Y(t,a,s),s&&s.classList.contains("table--cta")){var i=Tt(t);s.style.setProperty("--cta-width","".concat(i,"rem"))}},Z=function(t,a,r,s){return Et(this,void 0,void 0,function*(){var i=(h,b,u)=>b.split(/[\.\[\]\'\"]/).filter(m=>m).reduce((m,v)=>m?m[v]:u,h),c=new FormData(a),o=new URLSearchParams(c).toString(),d=t.querySelectorAll("thead tr th"),n=t.querySelector("tbody"),l=a.getAttribute("data-ajax");s.classList.add("table--loading"),window.controller||(window.controller=[]),window.controller[l]&&window.controller[l].abort(),window.controller[l]=new AbortController;var{signal:f}=controller[l];try{yield fetch(l+"?"+o,{signal:f,method:"get",credentials:"same-origin",headers:new Headers({"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"})}).then(h=>h.json()).then(h=>{var b=a.hasAttribute("data-schema")?a.getAttribute("data-schema"):"data",u=a.hasAttribute("data-schema-total")?a.getAttribute("data-schema-total"):"meta.total",m=a.hasAttribute("data-schema-page")?a.getAttribute("data-schema-page"):"meta.current_page",v=i(h,u,1),A=i(h,m,1),S=i(h,b),y=s.hasAttribute("data-empty-msg")?s.getAttribute("data-empty-msg"):"No results found";if(S?(n.innerHTML="",S.forEach((M,L)=>{var q=document.createElement("tr");d.forEach((p,_)=>{var w="",x=document.createElement("td");if(x.setAttribute("data-label",p.innerText),p.getAttribute("data-output")){var T=p.getAttribute("data-output");w=T.replace(new RegExp(/{(.*?)}/,"gm"),function(D){return i(M,D.replace("{","").replace("}",""))})}if(p.hasAttribute("data-output-array")){var T=p.getAttribute("data-output"),R=i(M,T.replace("{","").replace("}",""));w="",R.forEach((H,
|
|
58
|
+
</div>`),!0},Et=function(e,t,a,r){function s(i){return i instanceof a?i:new a(function(c){c(i)})}return new(a||(a=Promise))(function(i,c){function o(l){try{n(r.next(l))}catch(f){c(f)}}function d(l){try{n(r.throw(l))}catch(f){c(f)}}function n(l){l.done?i(l.value):s(l.value).then(o,d)}n((r=r.apply(e,t||[])).next())})},X=e=>{var t=Array.from(e.querySelectorAll("thead th")),a=Array.from(e.querySelectorAll("tbody tr"));a.forEach((r,s)=>{var i=Array.from(r.querySelectorAll("th, td")),c=["0","low","medium","high","unknown","n/a","pending","verified","incomplete","completed","requires approval"];i.forEach((o,d)=>{var n=t[d];if(typeof n<"u"){var l=document.createElement("div");l.innerHTML=n.innerHTML;var f=l.textContent||l.innerText||"";o.setAttribute("data-label",f),n.hasAttribute("data-td-class")&&o.setAttribute("class",n.getAttribute("data-td-class")),n.hasAttribute("data-format")&&(o.setAttribute("data-format",n.getAttribute("data-format")),o.innerHTML=z(n.getAttribute("data-format"),o.textContent.trim())),c.includes(o.textContent.trim().toLowerCase())&&o.setAttribute("data-content",o.textContent.trim().toLowerCase())}})})},Tt=e=>{var t=0;return Array.from(e.querySelectorAll("tbody tr")).forEach((a,r)=>{var s=window.getComputedStyle(document.querySelector("html")),i=a.querySelector(":scope > *:last-child > *:first-child");if(i){i.classList.add("text-nowrap");var c=i.offsetWidth/parseFloat(s.fontSize);c+=1.7,t=t>c?t:c}}),t},Mt=e=>{if(e.closest(".table--fullwidth")||e.querySelectorAll("thead tr th").length<4)return!1;Array.from(e.querySelectorAll("tbody tr")).forEach((t,a)=>{var r=t.querySelector(":scope > :is(td,th):first-child"),s=r.textContent;if(s!="")r.innerHTML='<span class="td__content">'.concat(s,'</span><button type="button" class="d-none">').concat(s,"</button>");else{var i=t.querySelector(":scope > :is(td,th):nth-child(2)"),c=i.textContent;i.innerHTML='<span class="td__content">'.concat(c,'</span><button type="button" class="d-none">').concat(c,"</button>")}})},_t=e=>{e.addEventListener("click",t=>{if(t&&t.target instanceof HTMLElement&&t.target.closest("tr > :is(td,th):first-child button")){var a=t.target.closest("tr > :is(td,th):first-child button"),r=a.parentNode.closest("tr");r.getAttribute("data-view")=="full"?r.setAttribute("data-view","default"):r.setAttribute("data-view","full"),a.blur()}})},G=(e,t)=>{var a=t.querySelector("[data-search]");if(!a)return!1;var r=a.getAttribute("id"),s=a.getAttribute("data-search").split(","),i=a.parentNode,c={};s.forEach((o,d)=>{Array.from(e.querySelectorAll('td[data-label="'+o.trim()+'"]')).forEach((n,l)=>{n.querySelector(".td__content")?c[n.querySelector(".td__content").textContent]=n.querySelector(".td__content").textContent:c[n.textContent]=n.textContent})}),a.setAttribute("list","".concat(r,"_list")),a.setAttribute("autocomplete","off"),i.querySelector("datalist")||(i.innerHTML+='<datalist id="'.concat(r,'_list"></datalist>')),i.querySelector("datalist").innerHTML="".concat(Object.keys(c).map(o=>'<option value="'.concat(o,'"></option>')).join(""))},Ht=(e,t,a,r,s)=>{var i,c=function(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(t.hasAttribute("data-ajax")){if(!l){var f=t.querySelector("[data-pagination]");f.value=1,r.setAttribute("data-page",1)}Z(e,t,a,r)}else t.hasAttribute("data-submit")?t.submit():(Q(e,t,r),k(r,a),Y(e,t))};t.addEventListener("keyup",n=>{clearTimeout(i),n&&n.target instanceof HTMLElement&&n.target.closest("[data-search]")&&(i=setTimeout(function(){c()},500))}),t.addEventListener("change",n=>{clearTimeout(i),n&&n.target instanceof HTMLElement&&n.target.closest("[data-sort]")&&(t.hasAttribute("data-submit")||J(e,t,s),c()),n&&n.target instanceof HTMLElement&&n.target.closest("[data-search]")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-filter]")&&n.target.closest("form .dialog__wrapper > dialog")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-filter]")&&!n.target.closest("form dialog")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-show]")&&c(),n&&n.target instanceof HTMLElement&&n.target.closest("[data-mimic]")&&c()}),t.addEventListener("click",n=>{if(clearTimeout(i),n&&n.target instanceof HTMLElement&&n.target.closest('dialog button:not([type="button"])')){var l=n.target.closest('dialog button:not([type="button"])'),f=l.closest("dialog");f.close()}n&&n.target instanceof HTMLElement&&n.target.closest(".dialog__close")&&(n.preventDefault(),n.stopPropagation()),n&&n.target instanceof HTMLElement&&n.target.closest("[data-clear]")&&(t.reset(),t.hasAttribute("data-submit")||J(e,t,s),c())}),t.addEventListener("submit",n=>{clearTimeout(i),t.hasAttribute("data-submit")||n.preventDefault(),c()}),t.addEventListener("force",n=>{c()}),t.addEventListener("paginate",n=>{c(!0)});var o=[],d=[];Array.from(t.querySelectorAll("[data-mimic]")).forEach((n,l)=>{var f=n.getAttribute("data-mimic");Array.from(document.querySelectorAll('[name="'.concat(f,'"]'))).forEach((h,b)=>{var u=h.closest("form");o.includes(u)||o.push(u),d.includes(f)||d.push(f)})}),o.forEach((n,l)=>{var f=function(){var b=[],u=new FormData(n);for(var[m,v]of u)document.querySelector('[data-mimic="'.concat(m,'"]'))&&!b.includes(m)?(b.push(m),document.querySelector('[data-mimic="'.concat(m,'"]')).value=v):document.querySelector('[data-mimic="'.concat(m,'"]'))&&(document.querySelector('[data-mimic="'.concat(m,'"]')).value+=","+v);for(var A of b){var S=new Event("force");t.dispatchEvent(S)}for(var y of d)if(!u.has(y)&&n.querySelector('[name="'.concat(y,'"]'))){document.querySelector('[data-mimic="'.concat(y,'"]')).value="";var g=new Event("force");t.dispatchEvent(g)}};n.addEventListener("force",h=>{f()}),n.addEventListener("change",h=>{f()})})},J=(e,t,a)=>{if(t.getAttribute("data-ajax"))return!1;var r=e.querySelector("tbody"),s=t.querySelector("[data-sort]"),i=s.querySelector("option:nth-child(".concat(s.selectedIndex+1,")")),c=i.getAttribute("data-sort"),o=i.getAttribute("data-order"),d=i.getAttribute("data-format");if(!c)return r.innerHTML=a.innerHTML,X(e),!1;var n=[];["asc","desc","descending"].includes(o)||(n=o.split(","));var l=[];Array.from(r.querySelectorAll("tr")).forEach((h,b)=>{var u=h.querySelector('td[data-label="'+c+'"], th[data-label="'+c+'"]').textContent.trim();n.length&&n.includes(u)&&(u=n.indexOf(u)),rt(u)&&(u=st(u,10)),d&&d=="date"&&(u=new Date(u));var m={index:u,row:h};l.push(m)}),l.sort((h,b)=>h.index>b.index?1:-1),(o=="descending"||o=="desc")&&(l=l.reverse());var f="";l.forEach((h,b)=>{f+=h.row.outerHTML}),r.innerHTML=f},Q=(e,t,a)=>{e.classList.remove("table--filtered");var r=[],s=[],i=0,c=t.querySelector("[data-pagination]")?parseInt(t.querySelector("[data-pagination]").value):1,o=t.querySelector("[data-show]")?parseInt(t.querySelector("[data-show]").value):15;Array.from(e.querySelectorAll("tbody tr")).forEach((u,m)=>{u.classList.remove("filtered"),u.classList.remove("filtered--matched"),u.classList.remove("filtered--show"),u.removeAttribute("data-filtered-by")});var d=Array.from(t.querySelectorAll("[data-filter]"));if(d.forEach((u,m)=>{if(!(u.type=="radio"&&!u.checked)&&!(u.type=="checkbox"&&!u.checked)){if(u.getAttribute("data-filter")=="multi")for(var[v,A]of Object.entries(JSON.parse(u.value)))r[u.getAttribute("data-filter")].push(A);else if(u&&u.value){var S=u.getAttribute("data-filter");r[S]||(r[S]=new Array),r[S].push(u.value)}}}),t.querySelector("[data-search]")){var n=t.querySelector("[data-search]"),l=t.querySelector("[data-search]").getAttribute("data-search").split(",");l.forEach((u,m)=>{s.push({column:"".concat(u.trim()),value:"".concat(n.value)})})}Array.from(t.querySelectorAll("[data-filter-count]")).forEach((u,m)=>{u.innerHTML=""}),r.length&&Array.from(t.querySelectorAll("[data-filter-count]")).forEach((u,m)=>{u.innerHTML+="(".concat(r.length,")")}),e.classList.add("table--filtered");var f=function(m,v){Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((A,S)=>{var y=!1;v.forEach((g,M)=>{var L=A.querySelector('[data-label="'.concat(m,'"]'));if(g&&g=="$today")g=z("date",new Date);else if(g&&g=="$yesterday"){var q=new Date;q.setDate(q.getDate()-1),g=z("date",q)}else if(g&&(g=="$thisWeek"||g=="$lastWeek")){var p=new Date,_=new Date(p.setDate(p.getDate()-(p.getDay()-1))),w=new Date(p.setDate(p.getDate()-p.getDay()+7)),x=new Date(L.textContent.toLowerCase());if(p.setHours(0,0,0,0),_.setHours(0,0,0,0),w.setHours(0,0,0,0),x.setHours(0,0,0,0),g=="$thisWeek")y=x>=_&&x<=w;else{var T=new Date(_.setDate(_.getDate()-7)),R=new Date(w.setDate(w.getDate()-7));T.setHours(0,0,0,0),R.setHours(0,0,0,0),y=x>=T&&x<=R}}else if(g&&g=="$thisMonth"){var N=new Date,D=N.getFullYear(),H=N.getMonth(),F=new Date(D,H,1),B=new Date(D,H+1,0),E=new Date(L.textContent.toLowerCase());F.setHours(0,0,0,0),B.setHours(0,0,0,0),E.setHours(0,0,0,0),y=E>=F&&E<=B}else if(g&&g=="$lastMonth"){var I=new Date,P=I.getFullYear(),j=I.getMonth(),O=new Date(P,j-1,1),et=new Date(P,j,0),U=new Date(L.textContent.toLowerCase());O.setHours(0,0,0,0),et.setHours(0,0,0,0),U.setHours(0,0,0,0),y=U>=O&&U<=et}L&&L.textContent.toLowerCase().includes(g.toLowerCase())&&(y=!0)}),y||(A.classList.add("filtered"),A.setAttribute("data-filtered-by",m))})};for(var[h,b]of Object.entries(r))f(h,b);Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((u,m)=>{var v=!(s.length>0&&s[0].value.length>=3);s.forEach((A,S)=>{var y=u.querySelector('[data-label="'.concat(A.column,'"]'));y&&A.value.length>=3&&y.textContent.toLowerCase().includes(A.value.toLowerCase())&&(v=!0)}),v||u.classList.add("filtered")}),Array.from(e.querySelectorAll("tbody tr:not(.filtered")).forEach((u,m)=>{i++,u.classList.add("filtered--matched");var v=Math.ceil(i/o);v==parseInt(c)&&u.classList.add("filtered--show")}),a&&(a.setAttribute("data-page",c),a.setAttribute("data-pages",Math.ceil(i/o)),a.setAttribute("data-total",i),a.setAttribute("data-show",o))},Y=(e,t,a)=>{var r=Array.from(t.querySelectorAll("[data-query]"));r.forEach((s,i)=>{var c=s.getAttribute("data-query"),o;if(c=="total")a.hasAttribute("data-total")?o=a.getAttribute("data-total"):o=(e.classList.contains("table--filtered"),e.querySelectorAll("tbody tr").length);else if(!c.includes(" == ")&&c.includes(" & ")){var d=c.split(" & "),n="";d.forEach(h=>{n+=':not([data-filtered-by="'.concat(h,'"])')}),o=Array.from(e.querySelectorAll("tbody tr".concat(n))).length}else if(!c.includes(" == "))o=Array.from(e.querySelectorAll('tbody tr:not([data-filtered-by="'.concat(c,'"])'))).length;else if(c.includes(" && ")){var l=c.split(" && ");o=Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).filter(function(h){var b=!0;for(var[u,m]of Object.entries(l)){var v=m.split(" == ");(!h.querySelector('td[data-label="'.concat(v[0],'"]'))||h.querySelector('td[data-label="'.concat(v[0],'"]')).textContent!="".concat(v[1]))&&(b=!1)}return b}).length}else{var f=c.split(" == ");o=Array.from(e.querySelectorAll('tbody tr.filtered--matched td[data-label="'.concat(f[0],'"], tbody tr[data-filtered-by="').concat(f[0],'"] td[data-label="').concat(f[0],'"]'))).filter(function(h){return h.textContent===f[1]}).length}s.hasAttribute("data-total")?s.setAttribute("data-total",o):s.innerHTML=o})},Ct=function(t,a,r,s){r.addEventListener("click",i=>{if(i&&i.target instanceof HTMLElement&&i.target.closest("[data-page]")){i.preventDefault();var c=a.querySelector("[data-pagination]"),o=i.target.closest("[data-page]").getAttribute("data-page");if(c.value=o,s.setAttribute("data-page",o),a.dispatchEvent(new Event("paginate")),t.hasAttribute("data-show-history")){var d=new URL(location);d.searchParams.set("page",o),history.pushState({type:"pagination",form:a.getAttribute("id"),page:o},"",d)}}if(i&&i.target instanceof HTMLElement&&i.target.closest("[data-show]")){i.preventDefault();var n=a.querySelector("[data-show]"),l=i.target.closest("[data-show]").getAttribute("data-show");n.value=l,s.setAttribute("data-show",l),a.dispatchEvent(new Event("submit"))}})},kt=(e,t)=>{if(!e)return!1;e.addEventListener("click",a=>{Rt(t)})},Rt=function(t){for(var a=[],r=t.getElementsByTagName("tr"),s=0;s<r.length;s++){for(var i=r[s].querySelectorAll("td,th"),c=[],o=0;o<i.length;o++)c.push('"'.concat(i[o].textContent,'"'));a.push(c.join(","))}a=a.join(`
|
|
59
|
+
`);var d=new Blob([a],{type:"text/csv"}),n=document.createElement("a");n.download="export.csv";var l=window.URL.createObjectURL(d);n.href=l,n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n)},K=function(t,a,r,s){if(X(t),Mt(t),Y(t,a,s),s&&s.classList.contains("table--cta")){let c=function(){Array.from(t.querySelectorAll("tr")).forEach((o,d)=>{var n=o.offsetHeight;o.style.setProperty("--row-height","".concat(n,"px"))})};var i=Tt(t);s.style.setProperty("--cta-width","".concat(i,"rem")),new ResizeObserver(c).observe(t)}},Z=function(t,a,r,s){return Et(this,void 0,void 0,function*(){var i=(h,b,u)=>b.split(/[\.\[\]\'\"]/).filter(m=>m).reduce((m,v)=>m?m[v]:u,h),c=new FormData(a),o=new URLSearchParams(c).toString(),d=t.querySelectorAll("thead tr th"),n=t.querySelector("tbody"),l=a.getAttribute("data-ajax");s.classList.add("table--loading"),window.controller||(window.controller=[]),window.controller[l]&&window.controller[l].abort(),window.controller[l]=new AbortController;var{signal:f}=controller[l];try{yield fetch(l+"?"+o,{signal:f,method:"get",credentials:"same-origin",headers:new Headers({"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"})}).then(h=>h.json()).then(h=>{var b=a.hasAttribute("data-schema")?a.getAttribute("data-schema"):"data",u=a.hasAttribute("data-schema-total")?a.getAttribute("data-schema-total"):"meta.total",m=a.hasAttribute("data-schema-page")?a.getAttribute("data-schema-page"):"meta.current_page",v=i(h,u,1),A=i(h,m,1),S=i(h,b),y=s.hasAttribute("data-empty-msg")?s.getAttribute("data-empty-msg"):"No results found";if(S?(n.innerHTML="",S.forEach((M,L)=>{var q=document.createElement("tr");d.forEach((p,_)=>{var w="",x=document.createElement("td");if(x.setAttribute("data-label",p.innerText),p.getAttribute("data-output")){var T=p.getAttribute("data-output");w=T.replace(new RegExp(/{(.*?)}/,"gm"),function(D){return i(M,D.replace("{","").replace("}",""))})}if(p.hasAttribute("data-output-array")){var T=p.getAttribute("data-output"),R=i(M,T.replace("{","").replace("}",""));w="",R.forEach((H,F)=>{var B=p.getAttribute("data-output-array"),E="";if(p.hasAttribute("data-output-array-property")&&p.hasAttribute("data-output-array-transform")){var I=i(H,p.getAttribute("data-output-array-property")),P=JSON.parse(p.getAttribute("data-output-array-transform")),j=P[I];E=B.replace("{".concat(p.getAttribute("data-output-array-property"),"}"),j)}E=E.replace(new RegExp(/{(.*?)}/,"gm"),function(O){return i(H,O.replace("{","").replace("}",""))}),w+=E})}if(p.hasAttribute("data-transform")){var N=JSON.parse(p.getAttribute("data-transform"));w=N[w],!w&&p.hasAttribute("data-default")&&(w=p.getAttribute("data-default"))}x.innerHTML=w,q.appendChild(x)}),n.appendChild(q)}),G(t,a),s.setAttribute("data-total",parseInt(v)),s.setAttribute("data-page",parseInt(A)),s.setAttribute("data-pages",Math.ceil(s.getAttribute("data-total")/s.getAttribute("data-show"))),K(t,a,r,s),k(s,r),parseInt(v)==0&&(n.innerHTML='<tr><td colspan="100%"><span>'.concat(y,"</span></td></tr>")),s.classList.remove("table--loading"),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Ajax table loaded",url:l,formData:o})):n.innerHTML='<tr><td colspan="100%"><span>Error loading table</span></td></tr>',a.hasAttribute("data-ajax-post")){var g=new XMLHttpRequest;g.open("GET","".concat(window.location.href,"?ajax=true&").concat(o)),g.send()}})}catch(h){console.log(h)}})},z=(e,t)=>{switch(e){case"datetime":return new Date(t).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(t).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(t).toLocaleDateString("en-gb",{year:"2-digit",month:"long",day:"numeric"});case"capitalise":return t=it(t)}};class Nt extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",a=this.classList.contains("table--cta"),r=this.classList.contains("table--export"),s=this.classList.toString();s=s.replace("table--cta",""),s=s.replace("table--loading","");var i=document.createElement("template");i.innerHTML=`
|
|
60
60
|
<style>
|
|
61
61
|
@import "`.concat(t,`/css/core.min.css";
|
|
62
62
|
|