@iamproperty/components 7.5.1--beta8 → 7.5.1--beta9
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/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
- package/assets/js/components/barchart/barchart.component.min.js +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
- package/assets/js/components/calendar/calendar.component.min.js +1 -1
- package/assets/js/components/card/card.component.min.js +1 -1
- package/assets/js/components/carousel/carousel.component.min.js +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
- package/assets/js/components/content/content.component.min.js +1 -1
- package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +1 -1
- package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
- package/assets/js/components/filter-card/filter-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/inline-edit/inline-edit.component.min.js +1 -1
- package/assets/js/components/input/input.component.min.js +1 -1
- package/assets/js/components/input-range/input-range.component.min.js +1 -1
- package/assets/js/components/marketing/marketing.component.min.js +1 -1
- package/assets/js/components/menu/menu.component.min.js +1 -1
- package/assets/js/components/milestone/milestone.component.min.js +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
- package/assets/js/components/modal/modal.component.min.js +1 -1
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +1 -1
- package/assets/js/components/multiselect/multiselect.component.min.js +1 -1
- package/assets/js/components/nav/nav.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +1 -1
- package/assets/js/components/password/password.component.min.js +1 -1
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js +1 -1
- package/assets/js/components/record-card/record-card.component.min.js +1 -1
- package/assets/js/components/search/search.component.min.js +1 -1
- package/assets/js/components/slider/slider.component.min.js +1 -1
- package/assets/js/components/split-button/split-button.component.min.js +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +1 -1
- package/assets/js/components/table/table.component.min.js +2 -2
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.min.js +3 -3
- package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/components/video-card/video-card.component.min.js +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/table.js +1 -0
- package/assets/js/scripts.bundle.js +1 -1
- package/assets/js/scripts.bundle.min.js +1 -1
- package/assets/ts/modules/table.ts +2 -3
- package/dist/components.es.js +29 -29
- package/dist/components.umd.js +47 -47
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta9
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
|
-
*/const R=function(t){return typeof t!="string"?!1:!isNaN(t)&&!isNaN(parseFloat(t))},O=(t,e)=>String(t).padStart(e,"0"),B=t=>t.charAt(0).toUpperCase()+t.slice(1),p=(t,e,a)=>e.split(/[\.\[\]\'\"]/).filter(i=>i).reduce((i,s)=>i?i[s]:a,t),_=(t=1)=>Math.floor(Math.random()*Date.now()*(t+1));var W=function(t,e,a,i){function s(n){return n instanceof a?n:new a(function(r){r(n)})}return new(a||(a=Promise))(function(n,r){function o(d){try{b(i.next(d))}catch(m){r(m)}}function l(d){try{b(i.throw(d))}catch(m){r(m)}}function b(d){d.done?n(d.value):s(d.value).then(o,l)}b((i=i.apply(t,e||[])).next())})};const V=(t,e)=>{switch(t){case"datetime":return new Date(e).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(e).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(e).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return e=B(e)}},U=function(t){const e=new Object;return Array.from(t.querySelectorAll("[data-filter]")).forEach(i=>{if(!(i.type=="radio"&&!i.checked)&&!(i.type=="checkbox"&&!i.checked)&&i&&i.value){const s=i.getAttribute("data-filter");let n=i.value;i.hasAttribute("data-date-from")&&(n+="-date-from"),i.hasAttribute("data-date-to")&&(n+="-date-to"),e[s]||(e[s]=[]),e[s].push(n)}}),e},J=t=>{let e=document.createElement("form");const a=t.querySelector("table");t.hasAttribute("data-filterby")?e=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?e=t.closest("form"):a.parentNode.insertBefore(e,a.nextSibling),e.hasAttribute("data-ajax")&&t.setAttribute("data-ajax",e.getAttribute("data-ajax")),e.hasAttribute("data-schema")&&t.setAttribute("data-schema",e.getAttribute("data-schema"))},w=(t,e,a,i,s)=>{a.querySelector("[name=show]")||a.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),a.querySelector("[name=page]")||a.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),i.addEventListener("update-show",n=>{if(a.querySelector("[name=show]").value!=n.detail.show){a.querySelector("[name=show]").value=n.detail.show;const r=new CustomEvent("update-show",{detail:{show:n.detail.show}});t.dispatchEvent(r),C(t,i),s()}}),i.addEventListener("update-page",n=>{if(console.log("update page"),a.querySelector("[name=page]").value!=n.detail.page){a.querySelector("[name=page]").value=n.detail.page;const r=new CustomEvent("update-page",{detail:{page:n.detail.page}});if(t.dispatchEvent(r),C(t,i),s(),!t.hasAttribute("data-no-scroll")){const l=e.getBoundingClientRect().top+window.pageYOffset+-250;window.scrollTo({top:l,behavior:"smooth"})}}})},X=(t,e)=>{let a=document.createElement("form");return t.hasAttribute("data-filterby")?a=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?a=t.closest("form"):t.querySelector("form")?a=t.querySelector("form"):e.parentNode.insertBefore(a,e.nextSibling),t.hasAttribute("data-ajax")&&a.setAttribute("data-ajax",t.getAttribute("data-ajax")),a},T=(t,e,a,i)=>{const s=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",5),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),Y(t,i),M(e),G(t,e),t.classList.contains("mh-sm")&&s.classList.add("mh-sm"),t.classList.contains("mh-md")&&s.classList.add("mh-md"),t.classList.contains("mh-lg")&&s.classList.add("mh-lg"),t.classList.contains("table--cta")&&(K(t,e),Q(t,e))},Y=(t,e)=>{t.hasAttribute("data-total")&&e.setAttribute("data-total",t.getAttribute("data-total")),t.hasAttribute("data-page")&&e.setAttribute("data-page",t.getAttribute("data-page")),t.hasAttribute("data-show")&&e.setAttribute("data-show",t.getAttribute("data-show")),t.hasAttribute("data-increment")&&e.setAttribute("data-increment",t.getAttribute("data-show")),t.hasAttribute("data-page-jump")&&e.setAttribute("data-page-jump","true"),t.hasAttribute("data-per-page")&&e.setAttribute("data-per-page","true"),t.hasAttribute("data-item-count")&&e.setAttribute("data-item-count","true"),t.hasAttribute("data-loading")&&e.setAttribute("data-loading","true"),t.classList.contains("table--fullwidth")&&e.setAttribute("data-minimal","true")},C=(t,e)=>{t.setAttribute("data-total",e.getAttribute("data-total")),t.setAttribute("data-page",e.getAttribute("data-page")),t.setAttribute("data-show",e.getAttribute("data-show")),t.setAttribute("data-increment",e.getAttribute("data-show"))},L=t=>{t.getAttribute("data-total");const e=t.getAttribute("data-page"),a=t.getAttribute("data-show");t.getAttribute("data-increment");const i=t.querySelector("table"),s=e*a,n=s-a;Array.from(i.querySelectorAll("tbody tr")).forEach((r,o)=>{o>=n&&o<s?r.classList.add("show"):r.classList.remove("show")})},M=t=>{const e=Array.from(t.querySelectorAll("thead th"));Array.from(t.querySelectorAll("tbody tr")).forEach(i=>{const s=Array.from(i.querySelectorAll("th, td")),n=["0","low","medium","high","unknown","n/a","pending","verified","due","overdue","incomplete","complete","completed","approval required","upcoming","requires approval","to do","on track","not started","warning","successful","failed"];s.forEach((r,o)=>{const l=e[o];if(typeof l<"u"){const b=document.createElement("div");b.innerHTML=l.innerHTML;const d=b.textContent||b.innerText||"";r.setAttribute("data-label",d),l.hasAttribute("data-td-class")&&r.setAttribute("class",l.getAttribute("data-td-class")),l.hasAttribute("data-format")&&(r.setAttribute("data-format",l.getAttribute("data-format")),r.innerHTML=V(l.getAttribute("data-format"),r.textContent.trim())),n.includes(r.textContent.trim().toLowerCase())&&r.setAttribute("data-content",r.textContent.trim().toLowerCase())}})})},G=(t,e)=>{if(t.classList.contains("table--fullwidth")&&!t.hasAttribute("data-expandable")||e.querySelectorAll("thead tr th").length<4&&!t.hasAttribute("data-expandable"))return!1;Array.from(e.querySelectorAll("thead tr")).forEach(a=>{e.querySelectorAll("thead tr th.expand-button-heading").length||a.insertAdjacentHTML("afterbegin",`<th class="${t.hasAttribute("data-expandable")?"th--fixed ":""}expand-button-heading"></th>`)}),Array.from(e.querySelectorAll("tbody tr")).forEach((a,i)=>{const s=a.getAttribute("data-view")==="full"?"aria-expanded":"";a.insertAdjacentHTML("afterbegin",`<td class="${t.hasAttribute("data-expandable")?"td--fixed ":""}td--expand"><button class="btn btn-compact btn-secondary btn-sm" data-expand-button ${s} data-index="${i}">Expand</button></td>`)}),e.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("[data-expand-button]")){const i=a.target.closest("[data-expand-button]"),s=i.closest("tr");i.toggleAttribute("aria-expanded"),s.getAttribute("data-view")=="full"?s.setAttribute("data-view","default"):s.setAttribute("data-view","full"),i.blur(),t.dispatchEvent(new CustomEvent("row-expanded",{detail:{row:i.getAttribute("data-index")}}))}})},K=(t,e)=>{let a=0;Array.from(e.querySelectorAll("tbody tr")).forEach(i=>{const s=window.getComputedStyle(document.querySelector("html")),n=i.querySelector(":scope > *:last-child > *:first-child");if(n){n.classList.add("text-nowrap");let r=n.offsetWidth/parseFloat(s.fontSize);r+=1.8,a=a>r?a:r}}),t.style.setProperty("--cta-width",`${a}rem`)},Q=(t,e)=>{function a(){Array.from(e.querySelectorAll("tr")).forEach(i=>{const s=i.offsetHeight;i.style.setProperty("--row-height",`${s}px`)})}new ResizeObserver(a).observe(e)},$=(t,e)=>{if(t.querySelector("iam-actionbar[data-selectall]")||document.querySelector(`iam-actionbar[data-for='${t.getAttribute("id")}']`)){const a=t.querySelector("iam-actionbar[data-selectall]")?t.querySelector("iam-actionbar[data-selectall]"):document.querySelector(`iam-actionbar[data-for='${t.getAttribute("id")}']`);Z(t,e,a)}t.querySelectorAll(".dialog__wrapper .btn-compact").forEach((a,i)=>{const n=a.closest(".dialog__wrapper").querySelector("dialog");if(n){const d=`menu${_(i)}`;n.setAttribute("id",d),n.setAttribute("popover","auto"),a.setAttribute("popovertarget",d),n.outerHTML=n.outerHTML.replace(/<dialog/g,"<iam-menu").replace(/<\/dialog>/g,"</iam-menu>")}a.classList.add("btn-sm"),a.classList.add("m-0");const r=a.closest("tr"),o=a.closest("td"),b=Array.prototype.slice.call(r.children).indexOf(o);o.classList.add("td--fixed"),e.querySelector(`thead tr th:nth-child(${b+1})`).classList.add("th--fixed")})},Z=(t,e,a)=>{Array.from(e.querySelectorAll("thead tr")).forEach(i=>{i.querySelector(".expand-button-heading")?i.querySelector(".expand-button-heading").insertAdjacentHTML("afterend",'<th class="th--fixed"></th>'):i.insertAdjacentHTML("afterbegin",'<th class="th--fixed"></th>')}),Array.from(e.querySelectorAll("tbody tr")).forEach((i,s)=>{if(i.setAttribute("data-index",s+1),!i.querySelector(".selectrow")){const n=`row${_(s)}`;i.querySelector(".td--expand")?i.querySelector(".td--expand").insertAdjacentHTML("afterend",`<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${n}" ${i.hasAttribute("data-selected")?'checked="true"':""}/><label for="${n}"><span class="visually-hidden">Select row</span></label></td>`):i.insertAdjacentHTML("afterbegin",`<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${n}" ${i.hasAttribute("data-selected")?'checked="true"':""}/><label for="${n}"><span class="visually-hidden">Select row</span></label></td>`)}}),e.addEventListener("change",i=>{if(i&&i.target instanceof HTMLElement&&i.target.closest(".selectrow input")){const s=i.target.closest(".selectrow input"),n=i.target.closest("tr"),r=e.querySelectorAll('.selectrow input[type="checkbox"]').length,o=e.querySelectorAll('.selectrow input[type="checkbox"]:checked').length;a.setAttribute("data-selected",r==o?"all":o);const l=new CustomEvent("row-selected",{detail:{rowIndex:n.getAttribute("data-index"),checked:!!s.checked}});t.dispatchEvent(l)}}),a.addEventListener("selected",i=>{if(i.detail.selected=="0"){Array.from(e.querySelectorAll('.selectrow input[type="checkbox"]')).forEach(n=>{n.checked=!1});const s=new CustomEvent("all-rows-unselected");t.dispatchEvent(s)}else if(i.detail.selected=="all"){Array.from(e.querySelectorAll('.selectrow input[type="checkbox"]')).forEach(n=>{n.checked=!0});const s=new CustomEvent("all-rows-selected");t.dispatchEvent(s)}})},tt=(t,e,a,i,s)=>{at(t,e),et(t,e),a.addEventListener("change",n=>{n&&n.target instanceof HTMLElement&&n.target.closest("[data-sort]")&&it(e,a,s)})},at=(t,e)=>{e.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("[data-sort]")){const i=a.target.closest("[data-sort]");i.setAttribute("data-sort","true"),Array.from(e.querySelectorAll("th[data-sort]")).forEach(o=>{o!=i&&(o.setAttribute("data-sort",""),o.removeAttribute("data-order-by"),i.setAttribute("title","Click to sort ascending"))}),i.hasAttribute("data-order-by")&&i.getAttribute("data-order-by")=="asc"?(i.setAttribute("data-order-by","desc"),i.setAttribute("title","Click to sort ascending")):(i.setAttribute("data-order-by","asc"),i.setAttribute("title","Click to sort descending"));const s=new CustomEvent("sort-by-heading",{detail:{heading:i.textContent,sortBy:i.getAttribute("data-order-by"),ref:i.getAttribute("data-ref")}});t.dispatchEvent(s);const n=i.textContent.trim(),r=i.getAttribute("data-order-by");t.hasAttribute("data-submit")||H(e,n,r)}})},et=(t,e)=>{var a;const i=t.querySelector("iam-actionbar");if(!i)return!1;const s=(a=i.shadowRoot)===null||a===void 0?void 0:a.querySelector("input#search");if(!s)return!1;const n=s.getAttribute("id"),r=s.parentNode,o={};e.querySelectorAll("tbody td:not(.td--fixed)").forEach(l=>{l.querySelector(".td__content")?o[l.querySelector(".td__content").textContent]=l.querySelector(".td__content").textContent:o[l.textContent]=l.textContent}),s.setAttribute("list",`${n}_list`),s.setAttribute("autocomplete","off"),r.querySelector("datalist")||(r.innerHTML+=`<datalist id="${n}_list"></datalist>`),r.querySelector("datalist").innerHTML=`${Object.keys(o).map(l=>`<option value="${l}"></option>`).join("")}`},it=(t,e,a)=>{if(e.getAttribute("data-ajax"))return!1;const i=t.querySelector("tbody");let s=e.querySelector('input[type="radio"][data-sort]:checked');if(e.querySelector("select[data-sort]")){const l=e.querySelector("select[data-sort]");s=e.querySelector(`select[data-sort] option:nth-child(${l.selectedIndex+1})`)}const n=s.getAttribute("data-sort"),r=s.getAttribute("data-order"),o=s.getAttribute("data-format");if(!n)return i.innerHTML=a.innerHTML,M(t),!1;H(t,n,r,o)},H=(t,e,a,i="")=>{const s=t.querySelector("tbody");let n=[];["asc","desc","descending"].includes(a)||(n=a.split(","));let r=[];Array.from(s.querySelectorAll("tr")).forEach(l=>{let b=l.querySelector('td[data-label="'+e+'"], th[data-label="'+e+'"]').textContent.trim();l.querySelector('[data-label="'+e+'"] .td__content')&&(b=l.querySelector('[data-label="'+e+'"] .td__content').textContent.trim()),n.length&&n.includes(b)&&(b=n.indexOf(b)),R(b)&&(b=O(b,10)),i&&i=="date"&&(b=new Date(b));const d={index:b,row:l};r.push(d)}),r.sort((l,b)=>l.index>b.index?1:-1),(a=="descending"||a=="desc")&&(r=r.reverse());let o="";r.forEach(l=>{o+=l.row.outerHTML}),s.innerHTML=o},lt=(t,e,a,i)=>{a.setAttribute("method","get");const s=t.querySelector("iam-actionbar");s&&s.addEventListener("change",n=>{a.submit()})},ot=(t,e,a,i)=>{g(t,e,a,i);const s=t.querySelector("iam-actionbar");a.addEventListener("submit",r=>{Array.from(a.querySelectorAll("[data-duplicate]")).forEach(o=>{const l=o.getAttribute("data-duplicate");document.querySelector(`[id="${l}"]`)&&(document.querySelector(`[id="${l}"]`).checked=o.checked)}),g(t,e,a,i),r.preventDefault()}),a.addEventListener("change",r=>{var o;if(r.target.closest("iam-modal")||g(t,e,a,i),r&&r.target instanceof HTMLElement&&r.target.hasAttribute("id")){const l=r.target.getAttribute("id");if(document.querySelector(`[data-duplicate="${l}"]`)){document.querySelector(`[data-duplicate="${l}"]`).checked=r.target.checked;const b=new CustomEvent("change");(o=document.querySelector(`[data-duplicate="${l}"]`))===null||o===void 0||o.dispatchEvent(b)}}if(r&&r.target instanceof HTMLElement&&r.target.hasAttribute("data-duplicate")&&!r.target.closest("iam-modal")){const l=r.target.getAttribute("data-duplicate");document.querySelector(`[id="${l}"]`)&&(document.querySelector(`[id="${l}"]`).checked=r.target.checked)}}),s&&(s.addEventListener("change",r=>{g(t,e,a,i)}),s.addEventListener("search-submit",r=>{a.querySelector("input[data-search]")?a.querySelector("input[data-search]").value=r.detail.search:a.insertAdjacentHTML("beforeend",`<input type="hidden" name="search" data-search="${t.querySelector("iam-actionbar[data-search]").getAttribute("data-search")}" value="${r.detail.search}"/>`);const o=new CustomEvent("search-submit",{detail:r.details});t.dispatchEvent(o),g(t,e,a,i)}));const n=[];Array.from(a.querySelectorAll("[data-mimic]")).forEach(r=>{r.addEventListener("change",o=>{g(t,e,a,i)})}),Array.from(a.querySelectorAll("[data-mimic]")).forEach(r=>{const o=r.getAttribute("data-mimic");Array.from(document.querySelectorAll(`[name="${o}"]`)).forEach(l=>{n.includes(l)||n.push(l)})}),n.forEach(r=>{r.addEventListener("change",o=>{const l=r.getAttribute("name"),b=document.querySelector(`[data-mimic="${l}"]`);let d="";Array.from(document.querySelectorAll(`[name="${l}"]:checked`)).forEach(c=>{d==""?d=c.value:d+=","+c.value}),console.log(d),b.value=d;const m=new CustomEvent("change");b?.dispatchEvent(m)})})},g=function(t,e,a,i){return W(this,void 0,void 0,function*(){t.querySelector("iam-actionbar")&&!t.querySelector("iam-actionbar").closest("form")&&(a.querySelector(".duplicate-actionbar")||a.insertAdjacentHTML("beforeend",'<div class="duplicate-actionbar" style="visibility: hidden; pointer-events: none; position: absolute;"></div>'),a.querySelector(".duplicate-actionbar").innerHTML=t.querySelector("iam-actionbar").innerHTML),a.querySelector("input[name=show]")||a.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),a.querySelector("input[name=page]")||a.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),a.querySelector("input[name=page]").value=t.getAttribute("data-page"),a.querySelector("input[name=show]").value=t.getAttribute("data-show");const s=new FormData(a),n=new URLSearchParams(s).toString(),r=e.querySelectorAll("thead tr th:not(.expand-button-heading)"),o=e.querySelector("tbody"),l=a.getAttribute("data-ajax");t.classList.add("table--loading");const b=U(a);Array.from(a.querySelectorAll("[data-filter-count]")).forEach(c=>{c.innerHTML="",c.parentNode.classList.remove("hover")});let d=0;Object.values(b).forEach(c=>{typeof c=="object"&&Object.values(c).length?d+=Object.values(c).length:d++}),d&&Array.from(a.querySelectorAll("[data-filter-count]")).forEach(c=>{c.innerHTML+=`(${d})`,c.parentNode.classList.add("hover")}),window.controller||(window.controller=[]),window.controller[l]&&window.controller[l].abort(),window.controller[l]=new AbortController;const{signal:m}=controller[l];i.setAttribute("data-loading","true"),a.classList.add("processing");try{yield fetch(l+"?"+n,{signal:m,method:"get",credentials:"same-origin",headers:new Headers({"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"})}).then(c=>c.json()).then(c=>{const v=t.hasAttribute("data-schema")?t.getAttribute("data-schema"):"data",z=t.hasAttribute("data-schema-total")?t.getAttribute("data-schema-total"):"meta.total",D=t.hasAttribute("data-schema-page")?t.getAttribute("data-schema-page"):"meta.current_page",F=p(c,z,15),nt=p(c,D,1),q=p(c,v),I=t.hasAttribute("data-empty-msg")?t.getAttribute("data-empty-msg"):"No results found";q?(o.innerHTML="",q.forEach(f=>{const y=document.createElement("tr");r.forEach(u=>{let h="";const A=document.createElement("td");if(A.setAttribute("data-label",u.innerText),u.getAttribute("data-output")&&(h=u.getAttribute("data-output").replace(new RegExp(/{(.*?)}/,"gm"),function(j){return p(f,j.replace("{","").replace("}",""))})),u.hasAttribute("data-output-array")){const k=u.getAttribute("data-output"),j=p(f,k.replace("{","").replace("}",""));h="",j.forEach(E=>{const P=u.getAttribute("data-output-array");let x="";if(u.hasAttribute("data-output-array-property")&&u.hasAttribute("data-output-array-transform")){const S=p(E,u.getAttribute("data-output-array-property")),N=JSON.parse(u.getAttribute("data-output-array-transform"))[S];x=P.replace(`{${u.getAttribute("data-output-array-property")}}`,N)}x=x.replace(new RegExp(/{(.*?)}/,"gm"),function(S){return p(E,S.replace("{","").replace("}",""))}),h+=x})}u.hasAttribute("data-transform")&&(h=JSON.parse(u.getAttribute("data-transform"))[h],!h&&u.hasAttribute("data-default")&&(h=u.getAttribute("data-default"))),A.innerHTML=h,y.appendChild(A)}),o.appendChild(y)}),Array.from(a.querySelectorAll("[data-ajax-query]")).forEach(f=>{const y=p(c,f.getAttribute("data-ajax-query"),"");f.hasAttribute("data-total")?f.setAttribute("data-total",y):f.innerHTML=y}),parseInt(F)==0&&(o.innerHTML=`<tr><td colspan="100%"><span>${I}</span></td></tr>`),t.classList.remove("table--loading"),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Ajax table loaded",url:l,formData:n}),T(t,e,a,i),$(t,e,a,i)):o.innerHTML='<tr><td colspan="100%"><span>Error loading table</span></td></tr>',i.removeAttribute("data-loading"),a.classList.remove("processing"),e.querySelectorAll("tbody tr").length<parseInt(t.getAttribute("data-show"))&&i.classList.add("d-none")})}catch(c){console.log(c)}})};class st extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const e=document.createElement("template");e.innerHTML=`
|
|
4
|
+
*/const R=function(t){return typeof t!="string"?!1:!isNaN(t)&&!isNaN(parseFloat(t))},O=(t,e)=>String(t).padStart(e,"0"),B=t=>t.charAt(0).toUpperCase()+t.slice(1),p=(t,e,a)=>e.split(/[\.\[\]\'\"]/).filter(i=>i).reduce((i,s)=>i?i[s]:a,t),_=(t=1)=>Math.floor(Math.random()*Date.now()*(t+1));var W=function(t,e,a,i){function s(n){return n instanceof a?n:new a(function(r){r(n)})}return new(a||(a=Promise))(function(n,r){function o(d){try{b(i.next(d))}catch(m){r(m)}}function l(d){try{b(i.throw(d))}catch(m){r(m)}}function b(d){d.done?n(d.value):s(d.value).then(o,l)}b((i=i.apply(t,e||[])).next())})};const V=(t,e)=>{switch(t){case"datetime":return new Date(e).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(e).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(e).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return e=B(e)}},U=function(t){const e=new Object;return Array.from(t.querySelectorAll("[data-filter]")).forEach(i=>{if(!(i.type=="radio"&&!i.checked)&&!(i.type=="checkbox"&&!i.checked)&&i&&i.value){const s=i.getAttribute("data-filter");let n=i.value;i.hasAttribute("data-date-from")&&(n+="-date-from"),i.hasAttribute("data-date-to")&&(n+="-date-to"),e[s]||(e[s]=[]),e[s].push(n)}}),e},J=t=>{let e=document.createElement("form");const a=t.querySelector("table");t.hasAttribute("data-filterby")?e=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?e=t.closest("form"):a.parentNode.insertBefore(e,a.nextSibling),e.hasAttribute("data-ajax")&&t.setAttribute("data-ajax",e.getAttribute("data-ajax")),e.hasAttribute("data-schema")&&t.setAttribute("data-schema",e.getAttribute("data-schema"))},w=(t,e,a,i,s)=>{a.querySelector("[name=show]")||a.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),a.querySelector("[name=page]")||a.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),i.addEventListener("update-show",n=>{if(a.querySelector("[name=show]").value!=n.detail.show){a.querySelector("[name=show]").value=n.detail.show;const r=new CustomEvent("update-show",{detail:{show:n.detail.show}});t.dispatchEvent(r),C(t,i),s()}}),i.addEventListener("update-page",n=>{if(console.log("update page"),a.querySelector("[name=page]").value!=n.detail.page){a.querySelector("[name=page]").value=n.detail.page;const r=new CustomEvent("update-page",{detail:{page:n.detail.page}});if(t.dispatchEvent(r),C(t,i),s(),!t.hasAttribute("data-no-scroll")){const l=e.getBoundingClientRect().top+window.pageYOffset+-250;window.scrollTo({top:l,behavior:"smooth"})}}})},X=(t,e)=>{let a=document.createElement("form");return t.hasAttribute("data-filterby")?a=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?a=t.closest("form"):t.querySelector("form")?a=t.querySelector("form"):e.parentNode.insertBefore(a,e.nextSibling),t.hasAttribute("data-ajax")&&a.setAttribute("data-ajax",t.getAttribute("data-ajax")),a},T=(t,e,a,i)=>{const s=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",5),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),Y(t,i),M(e),G(t,e),t.classList.contains("mh-sm")&&s.classList.add("mh-sm"),t.classList.contains("mh-md")&&s.classList.add("mh-md"),t.classList.contains("mh-lg")&&s.classList.add("mh-lg"),t.classList.contains("table--cta")&&(K(t,e),Q(t,e))},Y=(t,e)=>{t.hasAttribute("data-total")&&e.setAttribute("data-total",t.getAttribute("data-total")),t.hasAttribute("data-page")&&e.setAttribute("data-page",t.getAttribute("data-page")),t.hasAttribute("data-show")&&e.setAttribute("data-show",t.getAttribute("data-show")),t.hasAttribute("data-increment")&&e.setAttribute("data-increment",t.getAttribute("data-show")),t.hasAttribute("data-page-jump")&&e.setAttribute("data-page-jump","true"),t.hasAttribute("data-per-page")&&e.setAttribute("data-per-page","true"),t.hasAttribute("data-item-count")&&e.setAttribute("data-item-count","true"),t.hasAttribute("data-loading")&&e.setAttribute("data-loading","true"),t.classList.contains("table--fullwidth")&&e.setAttribute("data-minimal","true")},C=(t,e)=>{t.setAttribute("data-total",e.getAttribute("data-total")),t.setAttribute("data-page",e.getAttribute("data-page")),t.setAttribute("data-show",e.getAttribute("data-show")),t.setAttribute("data-increment",e.getAttribute("data-show"))},L=t=>{t.getAttribute("data-total");const e=t.getAttribute("data-page"),a=t.getAttribute("data-show");t.getAttribute("data-increment");const i=t.querySelector("table"),s=e*a,n=s-a;Array.from(i.querySelectorAll("tbody tr")).forEach((r,o)=>{o>=n&&o<s?r.classList.add("show"):r.classList.remove("show")})},M=t=>{const e=Array.from(t.querySelectorAll("thead th"));Array.from(t.querySelectorAll("tbody tr")).forEach(i=>{const s=Array.from(i.querySelectorAll("th, td")),n=["0","low","medium","high","unknown","n/a","pending","verified","due","overdue","incomplete","complete","completed","approval required","upcoming","requires approval","to do","on track","not started","warning","successful","failed"];s.forEach((r,o)=>{const l=e[o];if(typeof l<"u"){const b=document.createElement("div");b.innerHTML=l.innerHTML;const d=b.textContent||b.innerText||"";r.setAttribute("data-label",d),l.hasAttribute("data-td-class")&&r.setAttribute("class",l.getAttribute("data-td-class")),l.hasAttribute("data-format")&&(r.setAttribute("data-format",l.getAttribute("data-format")),r.innerHTML=V(l.getAttribute("data-format"),r.textContent.trim())),n.includes(r.textContent.trim().toLowerCase())&&r.setAttribute("data-content",r.textContent.trim().toLowerCase())}})})},G=(t,e)=>{if(t.classList.contains("table--fullwidth")&&!t.hasAttribute("data-expandable")||e.querySelectorAll("thead tr th").length<4&&!t.hasAttribute("data-expandable"))return!1;Array.from(e.querySelectorAll("thead tr")).forEach(a=>{e.querySelectorAll("thead tr th.expand-button-heading").length||a.insertAdjacentHTML("afterbegin",`<th class="${t.hasAttribute("data-expandable")?"th--fixed ":""}expand-button-heading"></th>`)}),Array.from(e.querySelectorAll("tbody tr")).forEach((a,i)=>{const s=a.getAttribute("data-view")==="full"?"aria-expanded":"";a.insertAdjacentHTML("afterbegin",`<td class="${t.hasAttribute("data-expandable")?"td--fixed ":""}td--expand"><button class="btn btn-compact btn-secondary btn-sm" data-expand-button ${s} data-index="${i}">Expand</button></td>`)}),e.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("[data-expand-button]")){const i=a.target.closest("[data-expand-button]"),s=i.closest("tr");i.toggleAttribute("aria-expanded"),s.getAttribute("data-view")=="full"?s.setAttribute("data-view","default"):s.setAttribute("data-view","full"),i.blur(),t.dispatchEvent(new CustomEvent("row-expanded",{detail:{row:i.getAttribute("data-index")}}))}})},K=(t,e)=>{let a=0;Array.from(e.querySelectorAll("tbody tr")).forEach(i=>{const s=window.getComputedStyle(document.querySelector("html")),n=i.querySelector(":scope > *:last-child > *:first-child");if(n){n.classList.add("text-nowrap");let r=n.offsetWidth/parseFloat(s.fontSize);r+=1.8,a=a>r?a:r}}),t.style.setProperty("--cta-width",`${a}rem`)},Q=(t,e)=>{function a(){Array.from(e.querySelectorAll("tr")).forEach(i=>{const s=i.offsetHeight;i.style.setProperty("--row-height",`${s}px`)})}new ResizeObserver(a).observe(e)},$=(t,e)=>{if(t.querySelector("iam-actionbar[data-selectall]")||document.querySelector(`iam-actionbar[data-for='${t.getAttribute("id")}']`)){const a=t.querySelector("iam-actionbar[data-selectall]")?t.querySelector("iam-actionbar[data-selectall]"):document.querySelector(`iam-actionbar[data-for='${t.getAttribute("id")}']`);Z(t,e,a)}t.querySelectorAll(".dialog__wrapper .btn-compact").forEach((a,i)=>{const n=a.closest(".dialog__wrapper").querySelector("dialog");if(n){const d=`menu${_(i)}`;n.setAttribute("id",d),n.setAttribute("popover","auto"),a.setAttribute("popovertarget",d),n.outerHTML=n.outerHTML.replace(/<dialog/g,"<iam-menu").replace(/<\/dialog>/g,"</iam-menu>")}a.classList.add("btn-sm"),a.classList.add("m-0");const r=a.closest("tr"),o=a.closest("td"),b=Array.prototype.slice.call(r.children).indexOf(o);o.classList.add("td--fixed"),e.querySelector(`thead tr th:nth-child(${b+1})`).classList.add("th--fixed")})},Z=(t,e,a)=>{Array.from(e.querySelectorAll("thead tr")).forEach(i=>{i.querySelector(".expand-button-heading")?i.querySelector(".expand-button-heading").insertAdjacentHTML("afterend",'<th class="th--fixed"></th>'):i.insertAdjacentHTML("afterbegin",'<th class="th--fixed"></th>')}),Array.from(e.querySelectorAll("tbody tr")).forEach((i,s)=>{if(i.setAttribute("data-index",s+1),!i.querySelector(".selectrow")){const n=`row${_(s)}`;i.querySelector(".td--expand")?i.querySelector(".td--expand").insertAdjacentHTML("afterend",`<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${n}" ${i.hasAttribute("data-selected")?'checked="true"':""}/><label for="${n}"><span class="visually-hidden">Select row</span></label></td>`):i.insertAdjacentHTML("afterbegin",`<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${n}" ${i.hasAttribute("data-selected")?'checked="true"':""}/><label for="${n}"><span class="visually-hidden">Select row</span></label></td>`)}}),e.addEventListener("change",i=>{if(i&&i.target instanceof HTMLElement&&i.target.closest(".selectrow input")){const s=i.target.closest(".selectrow input"),n=i.target.closest("tr"),r=e.querySelectorAll('.selectrow input[type="checkbox"]').length,o=e.querySelectorAll('.selectrow input[type="checkbox"]:checked').length;a.setAttribute("data-selected",r==o?"all":o);const l=new CustomEvent("row-selected",{detail:{rowIndex:n.getAttribute("data-index"),checked:!!s.checked}});t.dispatchEvent(l)}}),a.addEventListener("selected",i=>{if(i.detail.selected=="0"){Array.from(e.querySelectorAll('.selectrow input[type="checkbox"]')).forEach(n=>{n.checked=!1});const s=new CustomEvent("all-rows-unselected");t.dispatchEvent(s)}else if(i.detail.selected=="all"){Array.from(e.querySelectorAll('.selectrow input[type="checkbox"]')).forEach(n=>{n.checked=!0});const s=new CustomEvent("all-rows-selected");t.dispatchEvent(s)}})},tt=(t,e,a,i,s)=>{at(t,e),et(t,e),a.addEventListener("change",n=>{n&&n.target instanceof HTMLElement&&n.target.closest("[data-sort]")&&it(e,a,s)})},at=(t,e)=>{e.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("[data-sort]")){const i=a.target.closest("[data-sort]");i.setAttribute("data-sort","true"),Array.from(e.querySelectorAll("th[data-sort]")).forEach(o=>{o!=i&&(o.setAttribute("data-sort",""),o.removeAttribute("data-order-by"),i.setAttribute("title","Click to sort ascending"))}),i.hasAttribute("data-order-by")&&i.getAttribute("data-order-by")=="asc"?(i.setAttribute("data-order-by","desc"),i.setAttribute("title","Click to sort ascending")):(i.setAttribute("data-order-by","asc"),i.setAttribute("title","Click to sort descending"));const s=new CustomEvent("sort-by-heading",{detail:{heading:i.textContent,sortBy:i.getAttribute("data-order-by"),ref:i.getAttribute("data-ref")}});t.dispatchEvent(s);const n=i.textContent.trim(),r=i.getAttribute("data-order-by");t.hasAttribute("data-submit")||H(e,n,r)}})},et=(t,e)=>{var a;const i=t.querySelector("iam-actionbar");if(!i)return!1;const s=(a=i.shadowRoot)===null||a===void 0?void 0:a.querySelector("input#search");if(!s)return!1;const n=s.getAttribute("id"),r=s.parentNode,o={};e.querySelectorAll("tbody td:not(.td--fixed)").forEach(l=>{l.querySelector(".td__content")?o[l.querySelector(".td__content").textContent]=l.querySelector(".td__content").textContent:o[l.textContent]=l.textContent}),s.setAttribute("list",`${n}_list`),s.setAttribute("autocomplete","off"),r.querySelector("datalist")||(r.innerHTML+=`<datalist id="${n}_list"></datalist>`),r.querySelector("datalist").innerHTML=`${Object.keys(o).map(l=>`<option value="${l}"></option>`).join("")}`},it=(t,e,a)=>{if(e.getAttribute("data-ajax"))return!1;const i=t.querySelector("tbody");let s=e.querySelector('input[type="radio"][data-sort]:checked');if(e.querySelector("select[data-sort]")){const l=e.querySelector("select[data-sort]");s=e.querySelector(`select[data-sort] option:nth-child(${l.selectedIndex+1})`)}const n=s.getAttribute("data-sort"),r=s.getAttribute("data-order"),o=s.getAttribute("data-format");if(!n)return i.innerHTML=a.innerHTML,M(t),!1;H(t,n,r,o)},H=(t,e,a,i="")=>{const s=t.querySelector("tbody");let n=[];["asc","desc","descending"].includes(a)||(n=a.split(","));let r=[];Array.from(s.querySelectorAll("tr")).forEach(l=>{let b=l.querySelector('td[data-label="'+e+'"], th[data-label="'+e+'"]').textContent.trim();l.querySelector('[data-label="'+e+'"] .td__content')&&(b=l.querySelector('[data-label="'+e+'"] .td__content').textContent.trim()),n.length&&n.includes(b)&&(b=n.indexOf(b)),R(b)&&(b=O(b,10)),i&&i=="date"&&(b=new Date(b));const d={index:b,row:l};r.push(d)}),r.sort((l,b)=>l.index>b.index?1:-1),(a=="descending"||a=="desc")&&(r=r.reverse());let o="";r.forEach(l=>{o+=l.row.outerHTML}),s.innerHTML=o},lt=(t,e,a,i)=>{a.setAttribute("method","get");const s=t.querySelector("iam-actionbar");s&&s.addEventListener("change",n=>{a.submit()})},ot=(t,e,a,i)=>{g(t,e,a,i);const s=t.querySelector("iam-actionbar");a.addEventListener("submit",r=>{Array.from(a.querySelectorAll("[data-duplicate]")).forEach(o=>{const l=o.getAttribute("data-duplicate");document.querySelector(`[id="${l}"]`)&&(document.querySelector(`[id="${l}"]`).checked=o.checked)}),g(t,e,a,i),r.preventDefault()}),a.addEventListener("change",r=>{var o;if(r.target.closest("iam-modal")||g(t,e,a,i),r&&r.target instanceof HTMLElement&&r.target.hasAttribute("id")){const l=r.target.getAttribute("id");if(document.querySelector(`[data-duplicate="${l}"]`)){document.querySelector(`[data-duplicate="${l}"]`).checked=r.target.checked;const b=new CustomEvent("change");(o=document.querySelector(`[data-duplicate="${l}"]`))===null||o===void 0||o.dispatchEvent(b)}}if(r&&r.target instanceof HTMLElement&&r.target.hasAttribute("data-duplicate")&&!r.target.closest("iam-modal")){const l=r.target.getAttribute("data-duplicate");document.querySelector(`[id="${l}"]`)&&(document.querySelector(`[id="${l}"]`).checked=r.target.checked)}}),s&&(s.addEventListener("change",r=>{g(t,e,a,i)}),s.addEventListener("search-submit",r=>{a.querySelector("input[data-search]")?a.querySelector("input[data-search]").value=r.detail.search:a.insertAdjacentHTML("beforeend",`<input type="hidden" name="search" data-search="${t.querySelector("iam-actionbar[data-search]").getAttribute("data-search")}" value="${r.detail.search}"/>`);const o=new CustomEvent("search-submit",{detail:r.details});t.dispatchEvent(o),g(t,e,a,i)}));const n=[];Array.from(a.querySelectorAll("[data-mimic]")).forEach(r=>{r.addEventListener("change",o=>{g(t,e,a,i)})}),Array.from(a.querySelectorAll("[data-mimic]")).forEach(r=>{const o=r.getAttribute("data-mimic");Array.from(document.querySelectorAll(`[name="${o}"]`)).forEach(l=>{n.includes(l)||n.push(l)})}),n.forEach(r=>{r.addEventListener("change",o=>{const l=r.getAttribute("name"),b=document.querySelector(`[data-mimic="${l}"]`);let d="";Array.from(document.querySelectorAll(`[name="${l}"]:checked`)).forEach(c=>{d==""?d=c.value:d+=","+c.value}),console.log(d),b.value=d;const m=new CustomEvent("change");b?.dispatchEvent(m)})})},g=function(t,e,a,i){return W(this,void 0,void 0,function*(){t.querySelector("iam-actionbar")&&!t.querySelector("iam-actionbar").closest("form")&&(a.querySelector(".duplicate-actionbar")||a.insertAdjacentHTML("beforeend",'<div class="duplicate-actionbar" style="visibility: hidden; pointer-events: none; position: absolute;"></div>'),a.querySelector(".duplicate-actionbar").innerHTML=t.querySelector("iam-actionbar").innerHTML),a.querySelector("input[name=show]")||a.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),a.querySelector("input[name=page]")||a.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),a.querySelector("input[name=page]").value=t.getAttribute("data-page"),a.querySelector("input[name=show]").value=t.getAttribute("data-show");const s=new FormData(a);s.set("page_number",s.get("page"));const n=new URLSearchParams(s).toString(),r=e.querySelectorAll("thead tr th:not(.expand-button-heading)"),o=e.querySelector("tbody"),l=a.getAttribute("data-ajax");t.classList.add("table--loading");const b=U(a);Array.from(a.querySelectorAll("[data-filter-count]")).forEach(c=>{c.innerHTML="",c.parentNode.classList.remove("hover")});let d=0;Object.values(b).forEach(c=>{typeof c=="object"&&Object.values(c).length?d+=Object.values(c).length:d++}),d&&Array.from(a.querySelectorAll("[data-filter-count]")).forEach(c=>{c.innerHTML+=`(${d})`,c.parentNode.classList.add("hover")}),window.controller||(window.controller=[]),window.controller[l]&&window.controller[l].abort(),window.controller[l]=new AbortController;const{signal:m}=controller[l];i.setAttribute("data-loading","true"),a.classList.add("processing");try{yield fetch(l+"?"+n,{signal:m,method:"get",credentials:"same-origin",headers:new Headers({"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"})}).then(c=>c.json()).then(c=>{const v=t.hasAttribute("data-schema")?t.getAttribute("data-schema"):"data",z=t.hasAttribute("data-schema-total")?t.getAttribute("data-schema-total"):"meta.total",D=t.hasAttribute("data-schema-page")?t.getAttribute("data-schema-page"):"meta.current_page",F=p(c,z,15),nt=p(c,D,1),q=p(c,v),I=t.hasAttribute("data-empty-msg")?t.getAttribute("data-empty-msg"):"No results found";q?(o.innerHTML="",q.forEach(f=>{const y=document.createElement("tr");r.forEach(u=>{let h="";const A=document.createElement("td");if(A.setAttribute("data-label",u.innerText),u.getAttribute("data-output")&&(h=u.getAttribute("data-output").replace(new RegExp(/{(.*?)}/,"gm"),function(j){return p(f,j.replace("{","").replace("}",""))})),u.hasAttribute("data-output-array")){const k=u.getAttribute("data-output"),j=p(f,k.replace("{","").replace("}",""));h="",j.forEach(E=>{const P=u.getAttribute("data-output-array");let x="";if(u.hasAttribute("data-output-array-property")&&u.hasAttribute("data-output-array-transform")){const S=p(E,u.getAttribute("data-output-array-property")),N=JSON.parse(u.getAttribute("data-output-array-transform"))[S];x=P.replace(`{${u.getAttribute("data-output-array-property")}}`,N)}x=x.replace(new RegExp(/{(.*?)}/,"gm"),function(S){return p(E,S.replace("{","").replace("}",""))}),h+=x})}u.hasAttribute("data-transform")&&(h=JSON.parse(u.getAttribute("data-transform"))[h],!h&&u.hasAttribute("data-default")&&(h=u.getAttribute("data-default"))),A.innerHTML=h,y.appendChild(A)}),o.appendChild(y)}),Array.from(a.querySelectorAll("[data-ajax-query]")).forEach(f=>{const y=p(c,f.getAttribute("data-ajax-query"),"");f.hasAttribute("data-total")?f.setAttribute("data-total",y):f.innerHTML=y}),parseInt(F)==0&&(o.innerHTML=`<tr><td colspan="100%"><span>${I}</span></td></tr>`),t.classList.remove("table--loading"),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Ajax table loaded",url:l,formData:n}),T(t,e,a,i),$(t,e,a,i)):o.innerHTML='<tr><td colspan="100%"><span>Error loading table</span></td></tr>',i.removeAttribute("data-loading"),a.classList.remove("processing"),e.querySelectorAll("tbody tr").length<parseInt(t.getAttribute("data-show"))&&i.classList.add("d-none")})}catch(c){console.log(c)}})};class st extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const e=document.createElement("template");e.innerHTML=`
|
|
5
5
|
<style>
|
|
6
6
|
:host{inset:auto;top:anchor(bottom);left:anchor(left);position:fixed;position-try-fallbacks:flip-block,flip-inline;width:max-content;height:min-content;max-height:var(--menu-max-height, min(100vh - 6rem));background:var(--menu-bg, canvas);margin:var(--menu-margin, 0);padding:var(--menu-padding, 0.5rem);border:var(--menu-border, 2px solid grey);overflow:auto;border:none !important;border-radius:.5rem;box-shadow:0px 2px 9px rgba(0,0,0,.1)}:host(.menu--fill){width:anchor-size(width);min-width:anchor-size(width);max-width:anchor-size(width)}:host(:popover-open),:host([popover-open]){display:block}:host(:not([popover])){position:static;display:block}:host(.menu--sm){width:10rem}:host(.menu--md){width:15rem}:host(.menu--lg){width:20rem}:host(.menu--height-sm){max-height:12.5rem}:host(.menu--height-lg){max-height:25rem}::slotted(*:is(button,a,label,span)){background:unset !important;border:unset !important;color:var(--colour-primary) !important;font-weight:inherit !important;font-family:inherit !important;font-size:1rem !important;line-height:1.1875rem !important;display:block !important;margin:var(--menu-item-margin, 0 0 0.25rem 0) !important;padding-block:var(--menu-item-padding, 0.5rem) !important;width:var(--menu-item-width, 100%) !important;max-width:var(--menu-item-width, 100%) !important;text-align:var(--menu-item-text-align, left) !important}::slotted(*:is(button,a,label)){padding-inline:var(--menu-item-padding, 0.5rem);cursor:var(--menu-item-cursor, pointer) !important}::slotted(*:is(span):first-child){padding-top:0 !important;font-weight:700 !important}::slotted(*:is(button,a,label,span):last-child){margin-bottom:0 !important}::slotted(*:is(label)){--radio-size: 1.25rem;--radio-inner-size: 0.75rem;--radio-inner-top: 0.75rem;--radio-inner-left: 0.75rem;--checkbox-tick-size: 0.75rem;--checkbox-inner-size: 0.625rem;--checkbox-inner-top: 0.375rem;--checkbox-inner-left: 0.5rem;padding-left:2.25rem !important}::slotted(*:is(button,a,label):is(.selected)){background:#e9f8fc !important;border-left:4px solid var(--colour-info) !important;border-radius:.25rem !important;padding-left:calc(var(--menu-item-padding, 0.5rem) - 4px) !important}@media(prefers-color-scheme: dark){::slotted(*:is(button,a,label):is(.selected):not(:hover,.hover)){color:#000 !important}}::slotted(*:is(button,a,label):is(:hover,.hover,:focus,.focus)){background:var(--colour-light) !important;border-radius:.25rem !important}::slotted(*:is(button,a,label):is(:active,.active)){background:#e0e0e0 !important;border-radius:.25rem !important}@media(prefers-color-scheme: dark){::slotted(*:is(button,a,label):is(:active,.active)){color:#000 !important}}::slotted(hr){height:1px !important;background-color:var(--menu-hr-border-color, var(--border-color, grey)) !important;width:100%;margin:var(--menu-item-margin, 0 0 0.25rem 0) !important;padding:0 !important}::slotted(iam-menu:not([popover])){border:none !important;border-radius:0 !important;box-shadow:none !important;padding:0;margin:0;width:auto}::slotted(iam-menu[popover]){top:anchor(top);left:calc(anchor(right) + 1rem)}/*# sourceMappingURL=assets/css/components/menu.component.css.map */
|
|
7
7
|
|