@iamproperty/components 3.4.6 → 3.4.7

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.
Files changed (149) hide show
  1. package/assets/css/components/accordion.css.map +1 -1
  2. package/assets/css/components/applied-filters.css +1 -0
  3. package/assets/css/components/applied-filters.css.map +1 -0
  4. package/assets/css/components/card.css +1 -1
  5. package/assets/css/components/card.css.map +1 -1
  6. package/assets/css/components/charts.css +1 -1
  7. package/assets/css/components/charts.css.map +1 -1
  8. package/assets/css/components/container.css +1 -1
  9. package/assets/css/components/container.css.map +1 -1
  10. package/assets/css/components/dialog.css +1 -0
  11. package/assets/css/components/dialog.css.map +1 -0
  12. package/assets/css/components/forms.css +1 -1
  13. package/assets/css/components/forms.css.map +1 -1
  14. package/assets/css/components/lists.css +1 -1
  15. package/assets/css/components/lists.css.map +1 -1
  16. package/assets/css/components/nav.css +1 -1
  17. package/assets/css/components/nav.css.map +1 -1
  18. package/assets/css/components/pagination.css +1 -0
  19. package/assets/css/components/pagination.css.map +1 -0
  20. package/assets/css/components/table.css +1 -0
  21. package/assets/css/components/table.css.map +1 -0
  22. package/assets/css/core.min.css +1 -1
  23. package/assets/css/core.min.css.map +1 -1
  24. package/assets/css/style.min.css +1 -1
  25. package/assets/css/style.min.css.map +1 -1
  26. package/assets/js/bundle.js +18 -11
  27. package/assets/js/components/accordion/accordion.component.js +6 -0
  28. package/assets/js/components/accordion/accordion.component.min.js +3 -3
  29. package/assets/js/components/accordion/accordion.component.min.js.map +1 -1
  30. package/assets/js/components/applied-filters/applied-filters.component.js +26 -0
  31. package/assets/js/components/card/card.component.js +91 -0
  32. package/assets/js/components/card/card.component.min.js +21 -0
  33. package/assets/js/components/card/card.component.min.js.map +1 -0
  34. package/assets/js/components/filterlist/filterlist.component.js +49 -0
  35. package/assets/js/components/filterlist/filterlist.component.min.js +23 -0
  36. package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -0
  37. package/assets/js/components/header/header.component.js +6 -0
  38. package/assets/js/components/header/header.component.min.js +2 -2
  39. package/assets/js/components/header/header.component.min.js.map +1 -1
  40. package/assets/js/components/pagination/pagination.component.js +34 -0
  41. package/assets/js/components/table/table.component.js +104 -0
  42. package/assets/js/components/table/table.component.min.js +24 -0
  43. package/assets/js/components/table/table.component.min.js.map +1 -0
  44. package/assets/js/components/tabs/tabs.component.js +6 -0
  45. package/assets/js/components/tabs/tabs.component.min.js +17 -0
  46. package/assets/js/components/tabs/tabs.component.min.js.map +1 -0
  47. package/assets/js/dynamic.js +7 -18
  48. package/assets/js/dynamic.min.js +2 -53
  49. package/assets/js/dynamic.min.js.map +1 -1
  50. package/assets/js/flat-components.js +27 -9
  51. package/assets/js/modules/applied-filters.js +100 -0
  52. package/assets/js/modules/data-layer.js +45 -0
  53. package/assets/js/modules/filterlist.js +32 -0
  54. package/assets/js/modules/helpers.js +77 -49
  55. package/assets/js/modules/pagination.js +33 -0
  56. package/assets/js/modules/table.js +507 -420
  57. package/assets/js/modules/tabs.js +6 -0
  58. package/assets/js/modules/youtubevideo.js +53 -61
  59. package/assets/js/scripts.bundle.js +77 -62
  60. package/assets/js/scripts.bundle.js.map +1 -1
  61. package/assets/js/scripts.bundle.min.js +2 -2
  62. package/assets/js/scripts.bundle.min.js.map +1 -1
  63. package/assets/js/tests/filterlist.spec.js +22 -0
  64. package/assets/js/tests/pagination.spec.js +15 -0
  65. package/assets/js/tests/table.spec.js +147 -0
  66. package/assets/sass/_components.scss +1 -2
  67. package/assets/sass/_corefiles.scss +5 -4
  68. package/assets/sass/_functions/utilities.scss +16 -0
  69. package/assets/sass/_functions/variables.scss +32 -18
  70. package/assets/sass/_tests/colours.spec.scss +1 -1
  71. package/assets/sass/components/applied-filters.scss +65 -0
  72. package/assets/sass/components/card.scss +177 -233
  73. package/assets/sass/components/charts.scss +4 -0
  74. package/assets/sass/components/container.scss +7 -2
  75. package/assets/sass/components/dialog.scss +202 -0
  76. package/assets/sass/components/forms.scss +37 -5
  77. package/assets/sass/components/lists.scss +15 -0
  78. package/assets/sass/components/nav.scss +5 -1
  79. package/assets/sass/components/pagination.scss +140 -0
  80. package/assets/sass/components/table.scss +419 -0
  81. package/assets/sass/foundations/icons.scss +1 -1
  82. package/assets/sass/{components → foundations}/links.scss +26 -0
  83. package/assets/sass/foundations/reboot.scss +19 -13
  84. package/assets/svg/illustrations/table.svg +165 -0
  85. package/assets/ts/bundle.ts +23 -12
  86. package/assets/ts/components/accordion/accordion.component.ts +7 -0
  87. package/assets/ts/components/applied-filters/README.md +5 -0
  88. package/assets/ts/components/applied-filters/applied-filters.component.ts +33 -0
  89. package/assets/ts/components/card/README.md +22 -0
  90. package/assets/ts/components/card/card.component.ts +117 -0
  91. package/assets/ts/components/filterlist/README.md +17 -0
  92. package/assets/ts/components/filterlist/filterlist.component.ts +60 -0
  93. package/assets/ts/components/header/header.component.ts +8 -0
  94. package/assets/ts/components/pagination/README.md +11 -0
  95. package/assets/ts/components/pagination/pagination.component.ts +45 -0
  96. package/assets/ts/components/table/README.md +23 -0
  97. package/assets/ts/components/table/table.component.ts +128 -0
  98. package/assets/ts/components/tabs/tabs.component.ts +7 -0
  99. package/assets/ts/dynamic.ts +12 -19
  100. package/assets/ts/flat-components.ts +37 -9
  101. package/assets/ts/modules/applied-filters.ts +146 -0
  102. package/assets/ts/modules/data-layer.ts +58 -0
  103. package/assets/ts/modules/filterlist.ts +46 -0
  104. package/assets/ts/modules/helpers.ts +90 -60
  105. package/assets/ts/modules/pagination.ts +44 -0
  106. package/assets/ts/modules/table.ts +598 -433
  107. package/assets/ts/modules/tabs.ts +8 -1
  108. package/assets/ts/modules/youtubevideo.ts +58 -63
  109. package/assets/ts/tests/filterlist.spec.ts +29 -0
  110. package/assets/ts/tests/pagination.spec.ts +21 -0
  111. package/assets/ts/tests/table.spec.ts +191 -0
  112. package/dist/components.es.js +1264 -1296
  113. package/dist/components.umd.js +70 -65
  114. package/dist/style.css +1 -1
  115. package/package.json +7 -5
  116. package/src/components/AppliedFilters/AppliedFilters.vue +20 -0
  117. package/src/components/AppliedFilters/README.md +5 -0
  118. package/src/components/Card/Card.vue +11 -112
  119. package/src/components/Card/README.md +16 -18
  120. package/src/components/Carousel/Carousel.vue +49 -10
  121. package/src/components/Chart/Chart.vue +46 -4
  122. package/src/components/Filterlist/Filterlist.vue +20 -0
  123. package/src/components/Filterlist/README.md +17 -0
  124. package/src/components/Pagination/Pagination.vue +30 -0
  125. package/src/components/Pagination/README.md +11 -0
  126. package/src/components/Table/README.md +29 -44
  127. package/src/components/Table/Table.spec.js +5 -37
  128. package/src/components/Table/Table.vue +16 -91
  129. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +1 -1
  130. package/src/index.js +3 -2
  131. package/assets/css/components/cardDeck.css +0 -1
  132. package/assets/css/components/cardDeck.css.map +0 -1
  133. package/assets/css/components/links.css +0 -1
  134. package/assets/css/components/links.css.map +0 -1
  135. package/assets/css/components/modal.css +0 -1
  136. package/assets/css/components/modal.css.map +0 -1
  137. package/assets/css/components/tables.css +0 -1
  138. package/assets/css/components/tables.css.map +0 -1
  139. package/assets/js/modules/modal.js +0 -69
  140. package/assets/sass/components/cardDeck.scss +0 -108
  141. package/assets/sass/components/modal.scss +0 -136
  142. package/assets/sass/components/tables.scss +0 -291
  143. package/assets/ts/modules/modal.ts +0 -91
  144. package/src/components/CardDeck/CardDeck.spec.js +0 -99
  145. package/src/components/CardDeck/CardDeck.vue +0 -77
  146. package/src/components/CardDeck/README.md +0 -25
  147. package/src/components/Modal/Modal.spec.js +0 -22
  148. package/src/components/Modal/Modal.vue +0 -43
  149. package/src/components/Modal/README.md +0 -20
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * iamKey v3.4.6
2
+ * iamKey v3.4.7
3
3
  * Copyright 2022-2023 iamproperty
4
4
  */
5
- !function(t){"function"==typeof define&&define.amd?define(t):t()}((function(){"use strict";function t(r){if("object"!=typeof r)return!1;var o,n=r.querySelector("thead"),c=r.querySelector("tbody"),i=c.cloneNode(!0),s=new Event("sorted"),l=new Event("filtered"),d=new Event("reordered"),u="table_"+Math.random().toString(36).substr(2,9);r.setAttribute("id",u);var m=function(t,e){var a=[];Array.from(c.querySelectorAll("tr")).forEach(((e,r)=>{var o=e.querySelector('td[data-label="'+t+'"], th[data-label="'+t+'"]').textContent;(function(t){return"string"==typeof t&&!isNaN(t)&&!isNaN(parseFloat(t))})(o)&&(o=((t,e)=>String(t).padStart(10,"0"))(o));var n={index:o,row:e};a.push(n)})),a.sort(((t,e)=>t.index>e.index?1:-1)),"descending"==e&&(a=a.reverse());var o="";a.forEach(((t,e)=>{o+=t.row.outerHTML})),c.innerHTML=o,r.dispatchEvent(s)};if(r.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches("[data-sortable]")){var a="ascending"==e.getAttribute("aria-sort")?"descending":"ascending";Array.from(r.querySelectorAll("[data-sortable]")).forEach(((t,e)=>{t.setAttribute("aria-sort","none")})),e.setAttribute("aria-sort",a),r.setAttribute("data-sort",a),r.setAttribute("data-sortBy",e.textContent),m(e.textContent,a),Array.from(r.querySelectorAll("tr[draggable]")).forEach(((t,e)=>{t.removeAttribute("draggable")}));break}}),!1),r.getAttribute("data-sortBy")){var f="ascending"==r.getAttribute("data-sort")?"descending":"ascending";Array.from(r.querySelectorAll("[data-sortable]")).forEach(((t,e)=>{t.textContent==r.getAttribute("data-sortBy")&&(t.setAttribute("aria-sort",f),t.click())}))}var h=function(t){var e=[];Array.from(i.querySelectorAll("tr")).forEach(((a,o)=>{var n="";if(Array.from(r.querySelectorAll('[type="checkbox"]:checked + label')).forEach(((t,e)=>{n+=a.querySelector('td[data-label="'+t.textContent+'"]').textContent+" | "})),n.indexOf(t)>=0){var c={row:a};e.push(c)}}));var a="";e.forEach(((t,e)=>{a+=t.row.outerHTML})),c.innerHTML=a,r.dispatchEvent(l)},p=function(){var t=[];Array.from(r.querySelectorAll('[type="checkbox"]:checked + label')).forEach(((e,a)=>{t.push(e.textContent)}));var e=[];t.forEach(((t,a)=>{Array.from(r.querySelectorAll('td[data-label="'+t+'"]')).forEach(((t,a)=>{e[t.textContent]=t.textContent}))})),r.querySelector("datalist").innerHTML=Object.keys(e).map((t=>'<option value="'.concat(t,'"></option>'))).join("")};Array.from(r.querySelectorAll("[data-filterable]")).length&&(function(t){var e=document.createElement("div");e.classList.add("table__filters"),e.classList.add("row"),e.classList.add("pt-1"),e.classList.add("pb-3");var a=Array.from(r.querySelectorAll("th[data-filterable]")),o={};a.forEach(((t,e)=>{Array.from(r.querySelectorAll('td[data-label="'+t.textContent+'"]')).forEach(((t,e)=>{o[t.textContent]=t.textContent}))}));var n=1==a.length?"Filter by "+a[0].textContent:"Filter",c=1==a.length?"d-none":"d-sm-flex";e.innerHTML='<div class="col-sm-6 col-md-4 pb-3">\n <div class="form-control__wrapper form-control-inline mb-0">\n <label for="'.concat(u,'_filter" class="form-label">').concat(n,':</label>\n <input type="search" name="').concat(u,'_filter" id="').concat(u,'_filter" class="form-control form-control-sm" placeholder="" list="').concat(u,'_list" />\n </div>\n <datalist id="').concat(u,'_list">\n ').concat(Object.keys(o).map((t=>'<option value="'.concat(t,'"></option>'))).join(""),'\n </datalist>\n</div>\n<div class="col-md-8 align-items-center pb-3 ').concat(c,'">\n ').concat('<span class="pe-3 text-nowrap h5 mb-0">Filter by: </span>'+a.map((t=>'<div class="form-check pe-3 mt-0 mb-0"><input class="form-check-input" type="checkbox" id="'.concat(u,"_").concat(t.textContent.replace(" ","_").toLowerCase(),'" checked="checked" /><label class="form-check-label text-nowrap" for="').concat(u,"_").concat(t.textContent.replace(" ","_").toLowerCase(),'">').concat(t.textContent,"</label></div>"))).join(""),"\n</div>"),r.prepend(e)}(0,Array.from(r.querySelectorAll("[data-filterable]")).length),r.addEventListener("keyup",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches('input[type="search"]')){var a=e.value;h(a)}})),r.addEventListener("change",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches('input[type="search"]')){var a=e.value;h(a)}})),r.addEventListener("change",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches('input[type="checkbox"]')){var a=r.querySelector('input[type="search"]').value;h(a),p()}})));var b=function(t,e){var a=document.getElementById(u+"_style");null==a&&(a=document.createElement("style")).setAttribute("id",u+"_style");var o=t*(e-1)+1,n=t*e;a.innerHTML="\n #".concat(u," tbody tr {\n display: none;\n }\n #").concat(u," tbody tr:nth-child(").concat(o,"),\n #").concat(u," tbody tr:nth-child(").concat(o,") ~ tr{\n display: block;\n }\n @media screen and (min-width: 36em) {\n #").concat(u," tbody tr:nth-child(").concat(o,"),\n #").concat(u," tbody tr:nth-child(").concat(o,") ~ tr{\n display: table-row;\n }\n }\n #").concat(u," tbody tr:nth-child(").concat(n,") ~ tr{\n display: none;\n }\n "),r.append(a)};if(r.getAttribute("data-show")){var v=parseInt(r.getAttribute("data-show")),y=parseInt(r.getAttribute("data-page"))?parseInt(r.getAttribute("data-page")):1,A=r.querySelectorAll("tbody tr").length;v<A&&(b(v,y),e(u,r,v,y,A),a(u,r,v,y,A),r.addEventListener("change",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)e.matches('.table__pagination input[type="number"]')&&(b(e.value,y),a(u,r,e.value,y,A),r.setAttribute("data-show",e.value))})),r.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)e.matches(".page-item:not(.active):not(.disabled) .page-link")&&(b(r.getAttribute("data-show"),e.getAttribute("data-page")),a(u,r,r.getAttribute("data-show"),e.getAttribute("data-page"),A))}),!1),r.addEventListener("change",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)e.matches(".table__pagination select")&&(b(r.getAttribute("data-show"),e.value),a(u,r,r.getAttribute("data-show"),e.value,A))})))}function g(t){t.dataTransfer.setData("text/plain",t.target.id),o=t.target,t.target.classList.add("tr--dragging")}var L=function(){Array.from(c.querySelectorAll("tr")).forEach(((t,e)=>{if(null==t.querySelector('[data-label="Order"]')){var a=document.createElement("th");a.innerHTML=e+1,a.setAttribute("data-label","Order"),t.prepend(a)}t.setAttribute("id",u+"_row_"+(e+1)),t.setAttribute("data-order",e+1),t.setAttribute("draggable","true"),t.addEventListener("dragstart",g)}))};if(r.getAttribute("data-reorder")&&"false"!=r.getAttribute("data-reorder")){var E=document.createElement("th");E.innerHTML="Order",E.title="Click here to enable re-ordering via drag and drop",E.classList.add("table-order-reset"),n.querySelector("tr").prepend(E),L(),r.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches(".table-order-reset")){Array.from(r.querySelectorAll("[data-sortable]")).forEach(((t,e)=>{t.setAttribute("aria-sort","none")})),r.removeAttribute("data-sort"),r.removeAttribute("data-sortBy"),m("Order","ascending"),Array.from(r.querySelectorAll("tbody tr")).forEach(((t,e)=>{t.setAttribute("draggable","true")}));break}}),!1),document.addEventListener("dragover",(function(t){t.preventDefault()}),!1),document.addEventListener("dragenter",(function(t){t.preventDefault(),t.dataTransfer.dropEffect="move";for(var e=t.target;e&&e!=this;e=e.parentNode)e.matches("[data-reorder] tbody tr")&&e.classList.add("tr--dropable")}),!1),document.addEventListener("dragleave",(function(t){t.preventDefault();for(var e=t.target;e&&e!=this;e=e.parentNode)e.matches("[data-reorder] tbody tr")&&e.classList.remove("tr--dropable")}),!1),document.addEventListener("drop",(function(t){t.preventDefault();for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches("[data-reorder] tbody tr")){null!=e.parentNode&&null!=o.parentNode&&e!=o&&(o.parentNode.removeChild(o),o.getAttribute("data-order")>e.getAttribute("data-order")?e.parentNode.insertBefore(o,e):e.parentNode.insertBefore(o,e.nextElementSibling),Array.from(c.querySelectorAll("tr")).forEach(((t,e)=>{t.classList.remove("tr--dragging"),t.classList.remove("tr--dropable"),t.querySelector("th").innerHTML=e+1,t.setAttribute("data-order",e+1)})),r.dispatchEvent(d));break}}),!1)}r.addEventListener("filtered",(function(t){if(r.getAttribute("data-sortBy")&&r.getAttribute("data-sort")&&m(r.getAttribute("data-sortBy"),r.getAttribute("data-sort")),r.getAttribute("data-show")){var o=parseInt(r.getAttribute("data-show")),n=r.querySelectorAll("tbody tr").length,c=r.querySelector(".table__pagination");c?.remove(),o<n&&(b(o,1),e(u,r,o,1,n),a(u,r,o,1,n))}r.getAttribute("data-reorder")&&L()}),!1),r.addEventListener("sorted",(function(t){r.getAttribute("data-reorder")&&L()}),!1),r.addEventListener("populated",(function(e){r.querySelector(".table__filters").remove(),r.querySelector(".table__pagination").remove();var a=r.cloneNode(!0);r.parentNode.replaceChild(a,r),t(a)}),!1)}var e=function(t,e,a,r,o){var n=document.createElement("div");n.classList.add("table__pagination"),n.classList.add("row"),n.classList.add("pt-3"),n.classList.add("pb-3"),n.innerHTML='<div class="col mw-fit-content mb-3">\n<div class="form-control__wrapper form-control-inline mb-0">\n <label for="'.concat(t,'_showing" class="form-label">Showing:</label>\n <input type="number" name="').concat(t,'_showing" id="').concat(t,'_showing" class="form-control form-control-sm showing-input-field" placeholder="" list="').concat(t,'_pagination" value="').concat(a,'" min="1" max="').concat(o,'" />\n</div>\n<datalist id="').concat(t,'_pagination">\n<option value="5">5</option>\n').concat(o>10?'<option value="10">10</option>':"","\n").concat(o>20?'<option value="20">20</option>':"",'\n<option value="').concat(o,'">').concat(o,'</option>\n</datalist>\n</div>\n<div class="col mw-fit-content me-auto d-flex align-items-center mb-3"><span class="label">per page</span></div>\n<div class="col mw-fit-content d-sm-flex justify-content-end align-items-center" id="').concat(t,'_paginationBtns"></div>'),e.append(n)},a=function(t,e,a,r,o){var n=document.getElementById(t+"_paginationBtns");if(null==n)return!1;var c=Math.ceil(o/a);if(1==c)n.innerHTML="";else if(c<5){for(var i="",s=1;s<=c;s++)i+=s==r?'<li class="page-item active" aria-current="page"><span class="page-link">'.concat(s,"</span></li>"):'<li class="page-item"><button class="page-link" data-page="'.concat(s,'">').concat(s,"</button></li>");n.innerHTML='<span class="pe-2 mb-3">Page: </span><ul class="pagination mb-3">\n '.concat(1==r?'<li class="page-item disabled"><span class="page-link">Previous</span></li>':'<li class="page-item"><button class="page-link" data-page="'.concat(parseInt(r)-1,'">Previous</button></li>'),"\n ").concat(i,"\n ").concat(r==c?'<li class="page-item disabled"><span class="page-link">Next</span></li>':'<li class="page-item"><button class="page-link" data-page="'.concat(parseInt(r)+1,'">Next</button></li>'),"\n </ul>")}else{for(var l="",d=1;d<=c;d++)l+=d==r?'<option value="'.concat(d,'" selected>Page ').concat(d,"</option>"):'<option value="'.concat(d,'">Page ').concat(d,"</option>");n.innerHTML='\n<div class="form-control__wrapper page-number mb-2">\n<select class="form-select">\n'.concat(l,"\n</select>\n</div>\n ")}};class r{constructor(t){var e=this.createEmbed;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:not([data-modal-youtube]")){a.preventDefault(),e(t,r);break}}),!1):this.loadScripts(t,this.createEmbed)}loadScripts(t,e){return new Promise(((a,r)=>{var o=new Image;o.onload=function(){var r=document.createElement("script");r.src="https://www.youtube.com/iframe_api";var o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(r,o),document.body.classList.add("youtubeLoaded"),a(!0),r.onload=()=>{t.addEventListener("click",(function(a){for(var r=a.target;r&&r!=this;r=r.parentNode)if(r.matches("a:not([data-modal-youtube]")){a.preventDefault(),e(t,r);break}}),!1)}},o.onerror=function(){r(!1)},o.src="https://youtube.com/favicon.ico"}))}createEmbed(t,e){typeof window.player<"u"&&"function"==typeof window.player.pauseVideo&&window.player.pauseVideo();var a=e.getAttribute("data-id"),r=e.getAttribute("id");if(typeof r>"u"||null==r){var o=String.fromCharCode(65+Math.floor(26*Math.random()));r=o+Date.now(),e.setAttribute("id",r)}window.player=new YT.Player(r,{height:"100%",width:"100%",videoId:a,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:function(t){t.target.playVideo()},onStateChange:function(t){t.data!=YT.PlayerState.PLAYING||n||(document.getElementById(r).classList.add("player-ready"),n=!0)}}});var n=!1}}var o=t=>{var e=t.querySelectorAll(".modal__outer a, .modal__outer button"),a=e[0],r=e[e.length-1],o=t.getAttribute("id"),n=function(){document.querySelector('[href="'+window.location.hash+'"]').focus(),window.location.hash="close",history.replaceState("",document.title,window.location.pathname+window.location.search),typeof window.player<"u"&&"function"==typeof window.player.pauseVideo&&window.player.pauseVideo()};t.addEventListener("keydown",(function(t){"Tab"===t.key&&t.shiftKey&&document.activeElement==a?(t.preventDefault(),r.focus()):"Tab"===t.key&&!t.shiftKey&&document.activeElement==r&&(t.preventDefault(),a.focus())})),document.addEventListener("keydown",(function(t){"Escape"===t.key&&document.querySelector(".modal:target")&&n()})),t.addEventListener("click",(function(e){for(var a=e.target;a&&a!=this;a=a.parentNode){if(a.matches('[href="#close"]')){e.preventDefault(),n();break}if(a.matches(".modal__dock--right")){e.preventDefault(),t.classList.contains("modal--left")||t.classList.add("modal--right"),t.classList.remove("modal--left");break}if(a.matches(".modal__dock--left")){e.preventDefault(),t.classList.contains("modal--right")||t.classList.add("modal--left"),t.classList.remove("modal--right");break}}})),window.onhashchange=function(){if(location.hash==="#"+o){console.log("Modal is now open");var t=document.querySelector(".modal:target .modal__inner > .youtube-embed:first-child:last-child a");console.log(t),t&&t.click()}}};class n extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e='@import "'.concat(t,'/css/components/header.css";'),a=document.createElement("template");a.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n ').concat(e,"\n ").concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n :host {\n max-width:100%!important;\n padding:0!important;\n }\n </style>\n <div class="header-banner">\n <div class="container" part="container">\n <slot name="breadcrumb"></slot>\n <div class="header-banner__inner">\n <slot></slot>\n </div>\n </div>\n <picture>\n \x3c!-- Actual image only loaded on desktops --\x3e\n <source srcset="" media="(min-width: 62em)">\n \x3c!-- Placeholder image --\x3e\n <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="" lazy="" />\n </picture>\n </div>\n '),this.shadowRoot.appendChild(a.content.cloneNode(!0))}connectedCallback(){var t=this.shadowRoot.querySelector("picture"),e=this.shadowRoot.querySelector("picture source");this.hasAttribute("image")?e.setAttribute("srcset",this.getAttribute("image")):t.remove()}}var c=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets";class i extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.createElement("template");t.innerHTML='\n <style>\n @import "'.concat(c,'/css/core.min.css";\n @import "').concat(c,'/css/components/accordion.css";\n ').concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n </style>\n <div class="accordion">\n <slot></slot>\n </div>\n '),this.shadowRoot.appendChild(t.content.cloneNode(!0))}connectedCallback(){(function(t){var e=t.querySelectorAll("details"),a=t.querySelectorAll("summary");if(e.forEach((t=>{t.classList.add("accordion-item")})),a.forEach((t=>{t.classList.add("accordion-header"),t.classList.add("accordion-button"),t.classList.add("h4")})),!t.classList.contains("accordion--keep-open")){var r=t.querySelectorAll(":scope > details");r.forEach((t=>{t.addEventListener("click",(()=>{r.forEach((e=>{e!==t&&e.removeAttribute("open")}))}))}))}})(this),this.insertAdjacentHTML("beforebegin",'<link rel="stylesheet" href="'.concat(c,'/css/components/accordion.css">'))}}class s extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e='@import "'.concat(t,'/css/components/tabs.css";'),a=document.createElement("template");a.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n ').concat(e,"\n \n ").concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n </style>\n <div class="tabs">\n <div class="tabs__links"></div>\n <slot></slot>\n </div>\n '),this.shadowRoot.appendChild(a.content.cloneNode(!0))}connectedCallback(){var t;(function(t){var e=t.querySelectorAll(":scope > details");t.querySelectorAll(":scope > details > summary");var a=t.querySelector(":scope > .tabs__links");t.shadowRoot&&t.shadowRoot.querySelector(".tabs__links")&&(a=t.shadowRoot.querySelector(".tabs__links")),a||((a=document.createElement("div")).classList.add("tabs__links"),t.prepend(a)),e.forEach(((t,e)=>{var r=t.querySelector(":scope > summary");r.classList.add("visually-hidden");var o=document.createElement("button");t.hasAttribute("id")&&(o=document.createElement("a")).setAttribute("href","#".concat(t.getAttribute("id"))),t.hasAttribute("open")&&o.setAttribute("aria-pressed",!0),o.innerHTML="".concat(r.innerText),o.classList.add("link"),o.setAttribute("data-index",e),o.setAttribute("tabindex","-1"),a.appendChild(o)}))})(t=this),function(t){var e=t.querySelectorAll(":scope > details"),a=t.querySelectorAll(":scope > details > summary"),r=t.querySelectorAll(":scope > .tabs__links > button, .tabs__links > a");t.shadowRoot&&(r=t.shadowRoot.querySelectorAll(".tabs__links > button, .tabs__links > a")),r.forEach((t=>{t.addEventListener("click",(a=>{a.preventDefault(),r.forEach((e=>{var a=e==t;e.setAttribute("aria-pressed",a)})),e.forEach(((e,a)=>{var r=t.getAttribute("data-index")==a;r?e.setAttribute("open",r):e.removeAttribute("open")})),t.hasAttribute("href")&&history.pushState(void 0,void 0,t.getAttribute("href"))}))})),a.forEach(((t,e)=>{t.addEventListener("focus",(t=>{r.forEach((t=>{t.classList.remove("focus")})),r[e].classList.add("focus")})),t.addEventListener("click",(t=>{t.preventDefault(),r[e].click()}))}))}(t),function(t){var e=t.querySelectorAll(":scope > details"),a=t.querySelectorAll(":scope > .tabs__links > button, .tabs__links > a");t.shadowRoot&&(a=t.shadowRoot.querySelectorAll(".tabs__links > button, .tabs__links > a")),location.hash&&t.querySelector('.tabs__links [href="'.concat(location.hash,'"]'))?(t.querySelector('[href="'.concat(location.hash,'"]')).setAttribute("open",!0),t.querySelector('details[id="'.concat(location.hash.replace("#",""),'"]')).setAttribute("open",!0)):t.querySelector("details[open]")||(e[0].setAttribute("open",!0),a[0].setAttribute("aria-pressed",!0))}(t)}}document.addEventListener("DOMContentLoaded",(function(){var e;(e=document.body).classList.add("js-enabled"),(-1!==navigator.userAgent.indexOf("MSIE")||navigator.appVersion.indexOf("Trident/")>0)&&e.classList.add("ie"),(t=>{if(location.hash&&document.querySelector(location.hash+":not([open]) summary")){var e=document.querySelector(location.hash+" summary");e instanceof HTMLElement&&e.click()}window.addEventListener("hashchange",(function(){var t=location.hash.replace("#",""),e=document.querySelector('label[for="'.concat(t,'"]')),a=document.querySelector(location.hash+" summary");e instanceof HTMLElement?e.click():a instanceof HTMLElement&&a.click()}),!1)})(),(t=>{Array.from(t.querySelectorAll("table")).forEach(((t,e)=>{(t=>{var e=Array.from(t.querySelectorAll("thead th"));Array.from(t.querySelectorAll("tbody tr")).forEach(((t,a)=>{Array.from(t.querySelectorAll("th, td")).forEach(((t,a)=>{var r=e[a];if(typeof r<"u"){var o=document.createElement("div");o.innerHTML=r.innerHTML;var n=o.textContent||o.innerText||"";t.setAttribute("data-label",n)}}))}))})(t),(t=>{if(!t.parentNode.classList.contains("table__wrapper")){var e=t.outerHTML;t.outerHTML='<div class="table__wrapper">'.concat(e,"</div>")}})(t)}))})(document.body),window.customElements.get("iam-header")||window.customElements.define("iam-header",n),window.customElements.get("iam-accordion")||window.customElements.define("iam-accordion",i),window.customElements.get("iam-tabs")||window.customElements.define("iam-tabs",s),Array.from(document.querySelectorAll(".nav")).forEach((t=>{(t=>{Array.from(t.querySelectorAll("details")).forEach(((t,e)=>{t.addEventListener("mouseenter",(function(e){window.matchMedia("(min-width: 62em)").matches&&t.setAttribute("open","true")}),!1),t.addEventListener("mouseleave",(function(e){window.matchMedia("(min-width: 62em)").matches&&t.removeAttribute("open")}),!1)})),"IntersectionObserver"in window&&new IntersectionObserver((t=>{var[e]=t;return e.target.classList.toggle("is-stuck",e.intersectionRatio<1)}),{threshold:[1]}).observe(t)})(t)})),Array.from(document.querySelectorAll(".table__wrapper")).forEach((e=>{t(e)})),Array.from(document.querySelectorAll(".testimonial")).forEach((t=>{!function(t){var e,a=t.querySelector(".testimonial__images"),r=a.querySelectorAll("img").length;if(1==r)return!1;t.classList.add("testimonial--multi"),a.addEventListener("scroll",(function(o){clearTimeout(e),e=setTimeout((function(){var e=a.scrollWidth,o=a.scrollHeight,n=a.scrollLeft,c=a.scrollTop,i=Math.round(n/e*r)+1;0==n&&0!=c&&(i=Math.round(c/o*r)+1),t.setAttribute("data-show",i),function(e){var a=t.querySelector(".btn-next"),o=t.querySelector(".btn-prev");a.setAttribute("data-go",e+1),o.setAttribute("data-go",e-1),a.removeAttribute("disabled"),o.removeAttribute("disabled"),1==e?o.setAttribute("disabled",!0):e==r&&a.setAttribute("disabled",!0)}(i)}),300)}),!1),t.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches("[data-go]")){var o=parseInt(e.getAttribute("data-go")),n=0,c=0,i=a.scrollWidth,s=a.scrollHeight;i>s?c=Math.floor(i*((o-1)/r)):n=Math.floor(s*((o-1)/r)),a.scroll({top:n,left:c,behavior:"smooth"});break}}),!1)}(t)})),Array.from(document.querySelectorAll(".carousel")).forEach((t=>{!function(t){var e,a=t.querySelector(".carousel__inner"),r=t.querySelectorAll(".carousel__item").length;t.getAttribute("data-cols");var o=t.getAttribute("data-sm-cols"),n=t.getAttribute("data-md-cols");t.querySelector(".carousel__controls a").classList.add("active"),a.addEventListener("scroll",(function(o){clearTimeout(e),e=setTimeout((function(){var e=a.clientWidth,o=a.scrollWidth,n=a.scrollLeft,c=Math.round(n/o*r)+1,i=t.querySelector(".carousel__item:last-child").offsetLeft;Array.from(t.querySelectorAll(".carousel__controls a")).forEach(((t,e)=>{t.classList.remove("active")})),t.querySelector(".control-"+c).classList.add("active"),1==c?t.querySelector(".btn-prev").setAttribute("disabled","disabled"):t.querySelector(".btn-prev").removeAttribute("disabled"),a.scrollLeft+e>i?t.querySelector(".btn-next").setAttribute("disabled","disabled"):t.querySelector(".btn-next").removeAttribute("disabled")}),100)}),!1),t.addEventListener("click",(function(e){for(var r=e.target;r&&r!=this;r=r.parentNode)if(r.matches(".carousel__controls a")){e.preventDefault(),Array.from(t.querySelectorAll(".carousel__controls a")).forEach(((t,e)=>{t.classList.remove("active")})),r.classList.add("active");var o=document.querySelector(r.getAttribute("href"));a.scroll({top:0,left:o.offsetLeft,behavior:"smooth"});break}}),!1),t.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches(".btn-next, .btn-prev")){t.preventDefault();var r=e.classList.contains("btn-prev")?a.scrollLeft-a.clientWidth:a.scrollLeft+a.clientWidth;a.scroll({top:0,left:r,behavior:"smooth"});break}}),!1),1==r&&t.classList.add("hide-btns"),o>=r&&t.classList.add("hide-sm-btns"),n>=r&&t.classList.add("hide-md-btns")}(t)})),Array.from(document.querySelectorAll("form")).forEach((t=>{!function(t){Array.from(t.querySelectorAll("[data-input-range]")).forEach(((t,e)=>{!function(t){t.addEventListener("change",(function(e){var a=parseInt(t.querySelector("[data-min] select,[data-min] input").value),r=parseInt(t.querySelector("[data-max] select,[data-max] input").value);Array.from(t.querySelectorAll("[data-min] input")).forEach(((t,e)=>{t.setAttribute("max",r)})),Array.from(t.querySelectorAll("[data-max] input")).forEach(((t,e)=>{t.setAttribute("min",a)})),Array.from(t.querySelectorAll("[data-min] select option")).forEach(((t,e)=>{parseInt(t.getAttribute("value"))>r?t.classList.add("d-none"):t.classList.remove("d-none")})),Array.from(t.querySelectorAll("[data-max] select option")).forEach(((t,e)=>{parseInt(t.getAttribute("value"))<a?t.classList.add("d-none"):t.classList.remove("d-none")}))}),!1)}(t)})),Array.from(t.querySelectorAll("[data-redirect]")).forEach(((t,e)=>{!function(t){t.addEventListener("change",(function(e){if(t.matches("[data-value-if]")){var a=t.getAttribute("data-redirect"),r=t.getAttribute("data-value-if");t.value==r&&(document.location.href=a)}else typeof t.value<"u"&&(document.location.href=t.value)}),!1)}(t)})),Array.from(t.querySelectorAll(".multiple-file-uploads")).forEach(((t,e)=>{!function(t){var e=t.querySelector(".row").cloneNode(!0),a=t.querySelector("[data-add]");t.addEventListener("click",(function(r){for(var o=r.target;o&&o!=this;o=o.parentNode){if(o.matches("[data-add]")){var n=e.cloneNode(!0);t.insertBefore(n,o),a.matches("[data-maxfiles]")&&Array.from(t.querySelectorAll(":scope > .row")).length>=a.dataset.maxfiles&&a.setAttribute("disabled","disabled");break}if(o.matches("[data-delete]")){o.closest(".row").remove(),a.matches("[data-maxfiles]")&&Array.from(t.querySelectorAll(":scope > .row")).length<a.dataset.maxfiles&&a.removeAttribute("disabled");break}}}),!1)}(t)})),t.addEventListener("change",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches('[type="file"][data-filesize]')&&e.files&&e.files[0]){var a=e.dataset.filesize;e.files[0].size>a&&(e.value="",alert("File too large"));break}}),!1),t.addEventListener("change",(function(e){Array.from(t.querySelectorAll("select[data-activeif][data-equals],input[data-activeif][data-equals]")).forEach(((e,a)=>{var r=e.closest("[data-group]")?e.closest("[data-group]"):t,o=e.dataset.activeif,n=e.dataset.equals;r.querySelector('select[data-id="'.concat(o,'"],input[data-id="').concat(o,'"]')).value==n?e.removeAttribute("disabled"):(e.setAttribute("disabled","disabled"),e.value="")})),Array.from(t.querySelectorAll(".form-control__wrapper[data-displayif][data-equals]")).forEach(((e,a)=>{var r=e.closest("[data-group]")?e.closest("[data-group]"):t,o=e.dataset.activeif,n=e.dataset.equals;r.querySelector('select[data-id="'.concat(o,'"],input[data-id="').concat(o,'"]')).value==n?e.classList.remove("d-none"):e.classList.add("d-none")}))}),!1)}(t)})),Array.from(document.querySelectorAll(".modal")).forEach((t=>{o(t)})),Array.from(document.querySelectorAll(".youtube-embed")).forEach((t=>{new r(t)})),window.addEventListener("hashchange",(function(){var t=location.hash.replace("#",""),e=document.querySelector('label[for="'.concat(t,'"]'));e instanceof HTMLElement&&e.click()}),!1)}))}));
5
+ !function(t){"function"==typeof define&&define.amd?define(t):t()}((function(){"use strict";class t{constructor(t){document.body.classList.contains("youtubeLoaded")?t.addEventListener("click",(function(t){for(var a=t.target;a&&a!=this;a=a.parentNode)if(a.matches("a")){t.preventDefault(),e(a);break}}),!1):this.loadScripts(t,this.createEmbed)}loadScripts(t){return new Promise(((a,r)=>{var o=new Image;o.onload=function(){var r=document.createElement("script");r.src="https://www.youtube.com/iframe_api";var o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(r,o),document.body.classList.add("youtubeLoaded"),a(!0),r.onload=()=>{t.addEventListener("click",(function(t){console.log("click"),t&&t.target instanceof HTMLElement&&t.target.closest("a")&&(t.preventDefault(),e(t.target.closest("a")))}),!1)}},o.onerror=function(){r(!1)},o.src="https://youtube.com/favicon.ico"}))}}var e=function(t){typeof window.player<"u"&&"function"==typeof window.player.pauseVideo&&window.player.pauseVideo();var e=t.getAttribute("data-id"),a=t.getAttribute("id");if(typeof a>"u"||null==a){var r=String.fromCharCode(65+Math.floor(26*Math.random()));a=r+Date.now(),t.setAttribute("id",a)}window.player=new YT.Player(a,{height:"100%",width:"100%",videoId:e,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:function(t){t.target.playVideo()},onStateChange:function(t){t.data!=YT.PlayerState.PLAYING||o||(document.getElementById(a).classList.add("player-ready"),o=!0)}}});var o=!1};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"header"});class a extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e='@import "'.concat(t,'/css/components/header.css";'),a=document.createElement("template");a.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n ').concat(e,"\n ").concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n :host {\n max-width:100%!important;\n padding:0!important;\n }\n </style>\n <div class="header-banner">\n <div class="container" part="container">\n <slot name="breadcrumb"></slot>\n <div class="header-banner__inner">\n <slot></slot>\n </div>\n </div>\n <picture>\n \x3c!-- Actual image only loaded on desktops --\x3e\n <source srcset="" media="(min-width: 62em)">\n \x3c!-- Placeholder image --\x3e\n <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="" lazy="" />\n </picture>\n </div>\n '),this.shadowRoot.appendChild(a.content.cloneNode(!0))}connectedCallback(){var t=this.shadowRoot.querySelector("picture"),e=this.shadowRoot.querySelector("picture source");this.hasAttribute("image")?e.setAttribute("srcset",this.getAttribute("image")):t.remove()}}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"accordion"});var r=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets";class o extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.createElement("template");t.innerHTML='\n <style>\n @import "'.concat(r,'/css/core.min.css";\n @import "').concat(r,'/css/components/accordion.css";\n ').concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n </style>\n <div class="accordion">\n <slot></slot>\n </div>\n '),this.shadowRoot.appendChild(t.content.cloneNode(!0))}connectedCallback(){(function(t){var e=t.querySelectorAll("details"),a=t.querySelectorAll("summary");if(e.forEach((t=>{t.classList.add("accordion-item")})),a.forEach((t=>{t.classList.add("accordion-header"),t.classList.add("accordion-button"),t.classList.add("h4")})),!t.classList.contains("accordion--keep-open")){var r=t.querySelectorAll(":scope > details");r.forEach((t=>{t.addEventListener("click",(()=>{r.forEach((e=>{e!==t&&e.removeAttribute("open")}))}))}))}})(this),this.insertAdjacentHTML("beforebegin",'<link rel="stylesheet" href="'.concat(r,'/css/components/accordion.css">'))}}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"tabs"});class s extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e='@import "'.concat(t,'/css/components/tabs.css";'),a=document.createElement("template");a.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n ').concat(e,"\n \n ").concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n </style>\n <div class="tabs">\n <div class="tabs__links"></div>\n <slot></slot>\n </div>\n '),this.shadowRoot.appendChild(a.content.cloneNode(!0))}connectedCallback(){var t;(function(t){var e=t.querySelectorAll(":scope > details");t.querySelectorAll(":scope > details > summary");var a=t.querySelector(":scope > .tabs__links");t.shadowRoot&&t.shadowRoot.querySelector(".tabs__links")&&(a=t.shadowRoot.querySelector(".tabs__links")),a||((a=document.createElement("div")).classList.add("tabs__links"),t.prepend(a)),e.forEach(((t,e)=>{var r=t.querySelector(":scope > summary");r.classList.add("visually-hidden");var o=document.createElement("button");t.hasAttribute("id")&&(o=document.createElement("a")).setAttribute("href","#".concat(t.getAttribute("id"))),t.hasAttribute("open")&&o.setAttribute("aria-pressed",!0),o.innerHTML="".concat(r.innerText),o.classList.add("link"),o.setAttribute("data-index",e),o.setAttribute("tabindex","-1"),a.appendChild(o)}))})(t=this),function(t){var e=t.querySelectorAll(":scope > details"),a=t.querySelectorAll(":scope > details > summary"),r=t.querySelectorAll(":scope > .tabs__links > button, .tabs__links > a");t.shadowRoot&&(r=t.shadowRoot.querySelectorAll(".tabs__links > button, .tabs__links > a")),r.forEach((t=>{t.addEventListener("click",(a=>{a.preventDefault(),r.forEach((e=>{var a=e==t;e.setAttribute("aria-pressed",a)})),e.forEach(((e,a)=>{var r=t.getAttribute("data-index")==a;r?e.setAttribute("open",r):e.removeAttribute("open")})),t.hasAttribute("href")&&history.pushState(void 0,void 0,t.getAttribute("href")),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openTab",tabTitle:t.textContent})}))})),a.forEach(((t,e)=>{t.addEventListener("focus",(t=>{r.forEach((t=>{t.classList.remove("focus")})),r[e].classList.add("focus")})),t.addEventListener("click",(t=>{t.preventDefault(),r[e].click()}))}))}(t),function(t){var e=t.querySelectorAll(":scope > details"),a=t.querySelectorAll(":scope > .tabs__links > button, .tabs__links > a");t.shadowRoot&&(a=t.shadowRoot.querySelectorAll(".tabs__links > button, .tabs__links > a")),location.hash&&t.querySelector('.tabs__links [href="'.concat(location.hash,'"]'))?(t.querySelector('[href="'.concat(location.hash,'"]')).setAttribute("open",!0),t.querySelector('details[id="'.concat(location.hash.replace("#",""),'"]')).setAttribute("open",!0)):t.querySelector("details[open]")||(e[0].setAttribute("open",!0),a[0].setAttribute("aria-pressed",!0))}(t)}}var n=function(t,e){if(!t.getAttribute("data-pages"))return!1;t.getAttribute("data-page")||t.setAttribute("data-page",1);var a=t.getAttribute("data-page"),r=t.getAttribute("data-pages"),o=t.getAttribute("data-total"),s=t.getAttribute("data-show"),n=t.getAttribute("data-increment");if(r<=1)return e.innerHTML="",!1;for(var i="",c=1;c<=r;c++)i+=c==a?'<li class="page-item active" aria-current="page"><span class="page-link">'.concat(c,"</span></li>"):'<li class="page-item"><a href="?page='.concat(c,'" class="page-link" data-page="').concat(c,'">').concat(c,"</a></li>");return e.innerHTML='<ul class="pagination mb-0 d-none d-sm-flex">\n '.concat(1==a?'<li class="page-item disabled"><span class="page-link">Previous</span></li>':'<li class="page-item"><a href="?page='.concat(parseInt(a)-1,'" class="page-link" data-page="').concat(parseInt(a)-1,'">Previous</a></li>'),"\n ").concat(i,"\n ").concat(a==r?'<li class="page-item disabled"><span class="page-link">Next</span></li>':'<li class="page-item"><a href="?page='.concat(parseInt(a)+1,'" class="page-link" data-page="').concat(parseInt(a)+1,'">Next</a></li>'),"\n </ul>"),e.innerHTML+='<div class="d-sm-none text-center">\n <span class="d-block pb-2">You\'ve viewed '.concat(s," of ").concat(o,' results</span>\n <a href="?show=').concat(parseInt(s)+parseInt(n),'" class="btn btn-primary w-100 m-0" data-show="').concat(parseInt(s)+parseInt(n),'">Load more results</a>\n </div>'),!0},i=t=>{var e=Array.from(t.querySelectorAll("thead th"));Array.from(t.querySelectorAll("tbody tr")).forEach(((t,a)=>{var r=Array.from(t.querySelectorAll("th, td")),o=["Low","Medium","High","N/A","Pending","Verified","Incomplete","Completed","Requires approval"];r.forEach(((t,a)=>{var r=e[a];if(typeof r<"u"){var s=document.createElement("div");s.innerHTML=r.innerHTML;var n=s.textContent||s.innerText||"";t.setAttribute("data-label",n),r.hasAttribute("class")&&t.setAttribute("class",r.getAttribute("class")),r.hasAttribute("data-format")&&(t.setAttribute("data-format",r.getAttribute("data-format")),t.innerHTML=p("date",t.textContent.trim())),o.includes(t.textContent.trim())&&t.setAttribute("data-content",t.textContent.trim())}}))}))},c=(t,e)=>{var a=e.querySelector("[data-search]");if(!a)return!1;var r=a.getAttribute("id"),o=a.getAttribute("data-search").split(","),s=a.parentNode,n={};o.forEach(((e,a)=>{Array.from(t.querySelectorAll('td[data-label="'+e.trim()+'"]')).forEach(((t,e)=>{t.querySelector(".td__content")?n[t.querySelector(".td__content").textContent]=t.querySelector(".td__content").textContent:n[t.textContent]=t.textContent}))})),a.setAttribute("list","".concat(r,"_list")),a.setAttribute("autocomplete","off"),s.querySelector("datalist")||(s.innerHTML+='<datalist id="'.concat(r,'_list"></datalist>')),s.querySelector("datalist").innerHTML="".concat(Object.keys(n).map((t=>'<option value="'.concat(t,'"></option>'))).join(""))},l=(t,e,a)=>{if(e.getAttribute("data-ajax"))return!1;var r=t.querySelector("tbody"),o=e.querySelector("[data-sort]"),s=o.querySelector("option:nth-child(".concat(o.selectedIndex+1,")")),n=s.getAttribute("data-sort"),c=s.getAttribute("data-order"),l=s.getAttribute("data-format");if(!n)return r.innerHTML=a.innerHTML,i(t),!1;var d=[];["asc","desc","descending"].includes(c)||(d=c.split(","));var u=[];Array.from(r.querySelectorAll("tr")).forEach(((t,e)=>{var a=t.querySelector('td[data-label="'+n+'"], th[data-label="'+n+'"]').textContent.trim();d.length&&d.includes(a)&&(a=d.indexOf(a)),function(t){return"string"==typeof t&&!isNaN(t)&&!isNaN(parseFloat(t))}(a)&&(a=((t,e)=>String(t).padStart(10,"0"))(a)),l&&"date"==l&&(a=new Date(a));var r={index:a,row:t};u.push(r)})),u.sort(((t,e)=>t.index>e.index?1:-1)),("descending"==c||"desc"==c)&&(u=u.reverse());var h="";u.forEach(((t,e)=>{h+=t.row.outerHTML})),r.innerHTML=h},d=(t,e,a)=>{t.classList.remove("table--filtered");var r=[],o=[],s=0,n=e.querySelector("[data-pagination]")?parseInt(e.querySelector("[data-pagination]").value):1,i=e.querySelector("[data-show]")?parseInt(e.querySelector("[data-show]").value):15;if(Array.from(e.querySelectorAll("[data-filter]")).forEach(((t,e)=>{if(("radio"!=t.type||t.checked)&&("checkbox"!=t.type||t.checked))if("multi"==t.getAttribute("data-filter"))for(var[a,o]of Object.entries(JSON.parse(t.value)))r[t.getAttribute("data-filter")].push(o);else t.value&&(r[t.getAttribute("data-filter")]||(r[t.getAttribute("data-filter")]=new Array),r[t.getAttribute("data-filter")].push(t.value))})),e.querySelector("[data-search]")){var c=e.querySelector("[data-search]");e.querySelector("[data-search]").getAttribute("data-search").split(",").forEach(((t,e)=>{o.push({column:"".concat(t.trim()),value:"".concat(c.value)})}))}if(Array.from(e.querySelectorAll("[data-filter-count]")).forEach(((t,e)=>{t.innerHTML=""})),r.length&&Array.from(e.querySelectorAll("[data-filter-count]")).forEach(((t,e)=>{t.innerHTML+="(".concat(r.length,")")})),!o.length&&!r.length)return!1;t.classList.add("table--filtered"),Array.from(t.querySelectorAll("tbody tr")).forEach(((t,e)=>{t.classList.remove("filtered"),t.classList.remove("filtered--matched"),t.classList.remove("filtered--show"),t.removeAttribute("data-filtered-by")}));var l=function(e,a){console.log(a),Array.from(t.querySelectorAll("tbody tr:not(.filtered)")).forEach(((t,r)=>{var o=!1;a.forEach(((a,r)=>{var s=t.querySelector('[data-label="'.concat(e,'"]'));if(a&&"$today"==a)a=p("date",new Date);else if(a&&"$yesterday"==a){var n=new Date;n.setDate(n.getDate()-1),a=p("date",n)}else if(!a||"$thisWeek"!=a&&"$lastWeek"!=a){if(a&&"$thisMonth"==a){var i=new Date,c=i.getFullYear(),l=i.getMonth(),d=new Date(c,l,1),u=new Date(c,l+1,0),h=new Date(s.textContent.toLowerCase());d.setHours(0,0,0,0),u.setHours(0,0,0,0),h.setHours(0,0,0,0),o=h>=d&&h<=u}else if(a&&"$lastMonth"==a){var m=new Date,b=m.getFullYear(),f=m.getMonth(),g=new Date(b,f-1,1),y=new Date(b,f,0),v=new Date(s.textContent.toLowerCase());g.setHours(0,0,0,0),y.setHours(0,0,0,0),v.setHours(0,0,0,0),o=v>=g&&v<=y}}else{var A=new Date,w=new Date(A.setDate(A.getDate()-(A.getDay()-1))),L=new Date(A.setDate(A.getDate()-A.getDay()+7)),S=new Date(s.textContent.toLowerCase());if(A.setHours(0,0,0,0),w.setHours(0,0,0,0),L.setHours(0,0,0,0),S.setHours(0,0,0,0),"$thisWeek"==a)o=S>=w&&S<=L;else{var E=new Date(w.setDate(w.getDate()-7)),q=new Date(L.setDate(L.getDate()-7));E.setHours(0,0,0,0),q.setHours(0,0,0,0),o=S>=E&&S<=q}}s&&s.textContent.toLowerCase().includes(a.toLowerCase())&&(o=!0)})),o||(t.classList.add("filtered"),t.setAttribute("data-filtered-by",e))}))};for(var[d,h]of Object.entries(r))l(d,h);Array.from(t.querySelectorAll("tbody tr:not(.filtered)")).forEach(((t,e)=>{var a=!(o.length>0&&o[0].value.length>=3);o.forEach(((e,r)=>{var o=t.querySelector('[data-label="'.concat(e.column,'"]'));o&&e.value.length>=3&&o.textContent.toLowerCase().includes(e.value.toLowerCase())&&(a=!0)})),a||t.classList.add("filtered")})),Array.from(t.querySelectorAll("tbody tr:not(.filtered")).forEach(((t,e)=>{s++,t.classList.add("filtered--matched"),Math.ceil(s/i)==parseInt(n)&&t.classList.add("filtered--show")})),a&&(a.setAttribute("data-page",n),a.setAttribute("data-pages",Math.ceil(s/i)),a.setAttribute("data-total",s),a.setAttribute("data-show",i)),u(t,e)},u=(t,e)=>{Array.from(e.querySelectorAll("[data-query]")).forEach(((e,a)=>{var r,o=e.getAttribute("data-query");if("total"==o)r=t.classList.contains("table--filtered")?t.querySelectorAll("tbody tr:not(.filtered)").length:t.querySelectorAll("tbody tr").length;else if(!o.includes(" == ")&&o.includes(" & ")){var s=o.split(" & "),n="";s.forEach((t=>{n+=':not([data-filtered-by="'.concat(t,'"])')})),console.log(n),r=Array.from(t.querySelectorAll("tbody tr".concat(n))).length}else if(o.includes(" == "))if(o.includes(" && ")){var i=o.split(" && ");r=Array.from(t.querySelectorAll("tbody tr:not(.filtered)")).filter((function(t){var e=!0;for(var[a,r]of Object.entries(i)){var o=r.split(" == ");(!t.querySelector('td[data-label="'.concat(o[0],'"]'))||t.querySelector('td[data-label="'.concat(o[0],'"]')).textContent!="".concat(o[1]))&&(e=!1)}return e})).length}else{var c=o.split(" == ");console.log(c[0]),r=Array.from(t.querySelectorAll('tbody tr.filtered--matched td[data-label="'.concat(c[0],'"], tbody tr[data-filtered-by="').concat(c[0],'"] td[data-label="').concat(c[0],'"]'))).filter((function(t){return t.textContent===c[1]})).length}else r=Array.from(t.querySelectorAll('tbody tr:not([data-filtered-by="'.concat(o,'"])'))).length;e.hasAttribute("data-total")?e.setAttribute("data-total",r):e.innerHTML=r}))},h=function(t,e,a,r){if(s=t,Array.from(s.querySelectorAll("tbody tr")).forEach(((t,e)=>{var a=t.querySelector(":scope > :is(td,th):first-child"),r=a.textContent;a.innerHTML='<span class="td__content">'.concat(r,'</span><button type="button" class="d-none">').concat(r,"</button>")})),i(t),u(t,e),r&&r.classList.contains("table--cta")){var o=(t=>{var e=0;return Array.from(t.querySelectorAll("tr")).forEach(((t,a)=>{var r=window.getComputedStyle(document.querySelector("html")),o=t.querySelector(":scope > *:last-child > *:first-child");if(o){var s=o.offsetWidth/parseFloat(r.fontSize);e=e>(s+=1.5)?e:s}var n=t.offsetHeight/parseFloat(r.fontSize);t.style.setProperty("--row-height","".concat(n,"rem"))})),e})(t);r.style.setProperty("--cta-width","".concat(o,"rem"))}var s},m=function(t,e,a,r){new URLSearchParams(new FormData(e)).toString();var o=t.querySelectorAll("thead tr th"),s=t.querySelector("tbody");fetch(e.getAttribute("data-ajax"),{method:"get",credentials:"same-origin",headers:new Headers({"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"})}).then((t=>t.json())).then((i=>{i.data?(s.innerHTML="",i.data.forEach(((t,e)=>{var a=document.createElement("tr");o.forEach(((e,r)=>{var o="",s=document.createElement("td");s.setAttribute("data-label",e.innerText),e.getAttribute("data-output")&&(o=e.getAttribute("data-output").replace(new RegExp(/{(.*?)}/,"gm"),(function(e){return((t,e,a)=>e.split(/[\.\[\]\'\"]/).filter((t=>t)).reduce(((t,e)=>t?t[e]:undefined),t))(t,e.replace("{","").replace("}",""))}))),e.hasAttribute("data-format")&&(o=p(e.getAttribute("data-format"),o)),s.innerHTML=o,a.appendChild(s)})),s.appendChild(a)})),c(t,e),h(t,e,0,r),r.setAttribute("data-total",i.meta.total?i.meta.total:1),r.setAttribute("data-page",i.meta.current_page?i.meta.current_page:1),r.setAttribute("data-pages",Math.ceil(r.getAttribute("data-total")/r.getAttribute("data-show"))),n(r,a),0==i.data.length&&(s.innerHTML='<tr><td colspan="100%"><span class="h4 m-0">No results found</span></td></tr>')):s.innerHTML='<tr><td colspan="100%"><span class="h6 m-0">Error loading table</span></td></tr>'}))},p=(t,e)=>{switch(t){case"date":e=new Date(e).toLocaleDateString("en-gb",{year:"2-digit",month:"long",day:"numeric"});break;case"capitalise":e=(t=>t.charAt(0).toUpperCase()+t.slice(1))(e)}return e};class b extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e=this.classList.contains("table--cta"),a=this.classList.contains("table--export"),r=this.classList.toString();r=r.replace("table--cta","");var o=document.createElement("template");o.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n </style>\n ').concat(e?'<div class="table--cta">':"",'\n <div class="table__wrapper ').concat(r,'">\n <slot></slot>\n </div>\n ').concat(e?"</div>":"","\n ").concat(a?'<button class="link" type="button" data-export>Export table as CSV</button>':"",'\n <div class="table__pagination"></div>\n '),this.shadowRoot.appendChild(o.content.cloneNode(!0));var s=new URLSearchParams(window.location.search);this.hasAttribute("data-total")||this.setAttribute("data-total",this.querySelectorAll("table tbody tr").length),this.hasAttribute("data-page")||this.setAttribute("data-page",s.has("page")?s.get("page"):1),this.hasAttribute("data-show")||this.setAttribute("data-show",15),this.setAttribute("data-pages",Math.ceil(this.getAttribute("data-total")/this.getAttribute("data-show")))}connectedCallback(){var t,e,a;this.table=this.querySelector("table"),this.savedTableBody=this.querySelector("tbody").cloneNode(!0),this.pagination=this.shadowRoot.querySelector(".table__pagination"),this.form=document.createElement("form"),this.hasAttribute("data-filterby")&&(this.form=document.querySelector("#".concat(this.getAttribute("data-filterby"))),c(this.table,this.form),this.form.querySelector("[data-page]")||(this.form.innerHTML+='<input name="page" type="hidden" value="'.concat(this.getAttribute("data-page"),'" data-pagination="true" />')),this.form.querySelector("[data-show]")||(this.form.innerHTML+='<input name="show" type="hidden" value="'.concat(this.getAttribute("data-show"),'" data-show="true" />'))),this.table.addEventListener("click",(t=>{if(t&&t.target instanceof HTMLElement&&t.target.closest("tr > :is(td,th):first-child button")){var e=t.target.closest("tr > :is(td,th):first-child button"),a=e.parentNode.closest("tr");"full"==a.getAttribute("data-view")?a.setAttribute("data-view","default"):a.setAttribute("data-view","full"),e.blur()}})),((t,e,a,r,o)=>{var s,i=function(){e.hasAttribute("data-ajax")?m(t,e,a,r):e.hasAttribute("data-submit")?e.submit():(d(t,e,r),n(r,a))};e.addEventListener("keyup",(t=>{clearTimeout(s),t&&t.target instanceof HTMLElement&&t.target.closest("[data-search]")&&(s=setTimeout((function(){i()}),500))})),e.addEventListener("change",(a=>{clearTimeout(s),a&&a.target instanceof HTMLElement&&a.target.closest("[data-sort]")&&(e.hasAttribute("data-submit")||l(t,e,o),i()),a&&a.target instanceof HTMLElement&&a.target.closest("[data-search]")&&i(),a&&a.target instanceof HTMLElement&&a.target.closest("[data-filter]")&&!a.target.closest("form dialog")&&i(),a&&a.target instanceof HTMLElement&&a.target.closest("[data-show]")&&i()})),e.addEventListener("click",(a=>{clearTimeout(s),a&&a.target instanceof HTMLElement&&a.target.closest('dialog button:not([type="button"])')&&a.target.closest('dialog button:not([type="button"])').closest("dialog").close(),a&&a.target instanceof HTMLElement&&a.target.closest(".dialog__close")&&(a.preventDefault(),a.stopPropagation()),a&&a.target instanceof HTMLElement&&a.target.closest("[data-clear]")&&(e.reset(),e.hasAttribute("data-submit")||l(t,e,o),i())})),e.addEventListener("submit",(t=>{clearTimeout(s),e.hasAttribute("data-submit")||t.preventDefault(),i()}))})(this.table,this.form,this.pagination,this,this.savedTableBody),this.table,t=this.form,e=this.pagination,a=this,e.addEventListener("click",(e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("[data-page]")){e.preventDefault();var r=t.querySelector("[data-pagination]"),o=e.target.closest("[data-page]").getAttribute("data-page");r.value=o,a.setAttribute("data-page",o),t.dispatchEvent(new Event("submit"));var s=new URL(location);s.searchParams.set("page",o),history.pushState({type:"pagination",form:t.getAttribute("id"),page:o},"",s)}if(e&&e.target instanceof HTMLElement&&e.target.closest("[data-show]")){e.preventDefault();var n=t.querySelector("[data-show]"),i=e.target.closest("[data-show]").getAttribute("data-show");n.value=i,a.setAttribute("data-show",i),t.dispatchEvent(new Event("submit"))}})),((t,e)=>{if(!t)return!1;t.addEventListener("click",(t=>{!function(t){for(var e=[],a=t.getElementsByTagName("tr"),r=0;r<a.length;r++){for(var o=a[r].querySelectorAll("td,th"),s=[],n=0;n<o.length;n++)s.push('"'.concat(o[n].textContent,'"'));e.push(s.join(","))}e=e.join("\n");var i=new Blob([e],{type:"text/csv"}),c=document.createElement("a");c.download="export.csv";var l=window.URL.createObjectURL(i);c.href=l,c.style.display="none",document.body.appendChild(c),c.click(),document.body.removeChild(c)}(e)}))})(this.shadowRoot.querySelector("[data-export]"),this.table),this.form.getAttribute("data-ajax")?m(this.table,this.form,this.pagination,this):(h(this.table,this.form,this.pagination,this),d(this.table,this.form,this),n(this,this.pagination))}static get observedAttributes(){return["data-total","data-pages","data-page","data-show"]}attributeChangedCallback(t,e,a){}}class f extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e='@import "'.concat(t,'/css/components/card.css";');this.querySelector(".icon")&&this.classList.add("card--has-icon");var a=this.classList.toString(),r=document.createElement("template");r.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n ').concat(e,"\n ").concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n </style>\n <div class="card ').concat(a,'" tabindex="0" role="button">\n ').concat(this.hasAttribute("data-image")?'<div class="card__head"><img src="'.concat(this.getAttribute("data-image"),'" alt="" loading="lazy" /></div>'):"",'\n <div class="card__body">\n ').concat(this.classList.contains("card--filter")&&this.hasAttribute("data-total")?'<div class="card__total">'.concat(this.getAttribute("data-total"),"</div>"):"","\n ").concat(this.hasAttribute("data-illustration")?'<div class="card__illustration"><img src="'.concat(this.getAttribute("data-illustration"),'" alt="" loading="lazy" /></div>'):"","\n <slot></slot>\n </div>\n ").concat(this.hasAttribute("data-cta")?'<div class="card__footer"><span class="link">'.concat(this.getAttribute("data-cta"),"</span></div>"):"","\n </div>\n "),this.shadowRoot.appendChild(r.content.cloneNode(!0))}connectedCallback(){var t=this.parentNode.closest("a, button, label"),e=this.shadowRoot.querySelector(".card");t.setAttribute("tabindex","-1"),t.matches("label[for]")&&document.getElementById(t.getAttribute("for")).checked&&e.classList.add("active"),e.addEventListener("click",(a=>{t.matches("label[for]")?document.getElementById(t.getAttribute("for")).checked?e.classList.remove("active"):e.classList.add("active"):t.click()})),e.addEventListener("keydown",(a=>{switch(a.keyCode){case 32:case 13:t.matches("label[for]")?document.getElementById(t.getAttribute("for")).checked?e.classList.remove("active"):e.classList.add("active"):t.click()}}))}static get observedAttributes(){return["data-total","class"]}attributeChangedCallback(t,e,a){switch(t){case"data-total":this.shadowRoot.querySelector(".card__total").innerHTML=a;break;case"class":var r=this.classList.toString();this.querySelector(".icon")&&(r+=" card--has-icon"),this.shadowRoot.querySelector(".card").setAttribute("class","card ".concat(r))}}}var g=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",y='@import "'.concat(g,'/css/components/applied-filters.css";');class v extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=this.classList.toString(),e=document.createElement("template");e.innerHTML='\n <style>\n @import "'.concat(g,'/css/core.min.css";\n ').concat(y,"\n ").concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n </style>\n <div class="applied-filters ').concat(t,'"></div>\n <slot></slot>\n '),this.shadowRoot.appendChild(e.content.cloneNode(!0))}connectedCallback(){!function(t,e){function a(t,e){var a=!1,r=e.getAttribute("name");r.includes("[]")&&(r=r.replace("[]","[".concat(e.value,"]")));var o=t.querySelector('[data-name="'.concat(r,'"]'));o&&"checkbox"==e.getAttribute("type")&&(a=!0);var s=e.getAttribute("data-filter-text");if(o||(o=document.createElement("button"),t.appendChild(o)),o.setAttribute("type","button"),o.classList.add("filter"),o.setAttribute("data-name",r),o.innerHTML=s.replace("$value",e.value),(!e.value||a)&&o.remove(),e.parentNode.closest("[data-filter-text]")){var n=e.parentNode.closest("[data-filter-text]"),i=!0;if(r="",n.querySelectorAll("input").forEach(((e,a)=>{var o=e.getAttribute("name");if(r+="".concat(0!=a?",":"").concat(o),t.querySelector('[data-name="'.concat(o,'"]'))&&t.querySelector('[data-name="'.concat(o,'"]')).remove(),e.value){var n=document.createElement("button");n.setAttribute("type","button"),n.classList.add("filter"),n.setAttribute("data-name",o),n.innerHTML=s.replace("$value",e.value),t.appendChild(n)}else i=!1})),t.querySelector('[data-name="'.concat(r,'"]'))&&t.querySelector('[data-name="'.concat(r,'"]')).remove(),i){var c=n.getAttribute("data-filter-text");n.querySelectorAll("input").forEach(((e,a)=>{var r=e.getAttribute("name");t.querySelector('[data-name="'.concat(r,'"]'))&&t.querySelector('[data-name="'.concat(r,'"]')).remove(),c=c.replace("$".concat(a+1),e.value)}));var l=document.createElement("button");l.setAttribute("type","button"),l.classList.add("filter"),l.setAttribute("data-name",r),l.innerHTML=c,t.appendChild(l)}}}Array.from(t.querySelectorAll('input[type="checkbox"]:checked')).forEach(((t,r)=>{a(e,t)})),t.addEventListener("change",(function(t){if(t&&t.target instanceof HTMLElement&&t.target.closest("input[data-filter-text]")){var r=t.target.closest("input[data-filter-text]");a(e,r)}}),!1),e.addEventListener("click",(function(e){if(e&&e.target instanceof HTMLElement&&e.target.closest(".filter")){for(var a=e.target.closest(".filter"),r=a.getAttribute("data-name").split(","),o=0;o<r.length;o++){var s=r[o],n='[name="'.concat(s,'"]');if(s.match(/\[(.*)\]/)){var i=s.replace(/\[(.*)\]/,"[]"),c=s.replace(/.*\[(.*)\]/,"$1");n='[name="'.concat(i,'"][value="').concat(c,'"]')}for(var l=t.querySelectorAll(n),d=0;d<l.length;d++){var u=l[d];"radio"!=u.getAttribute("type")&&"checkbox"!=u.getAttribute("type")&&(l[d].value=""),l[d].checked=!1}}a.remove()}}),!1)}(this,this.shadowRoot.querySelector(".applied-filters"))}}class A extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e=document.createElement("template");e.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n </style>\n <div class="pagination__wrapper d-none">\n </div>\n '),this.shadowRoot.appendChild(e.content.cloneNode(!0));var a=new URLSearchParams(window.location.search);this.hasAttribute("data-total")||this.setAttribute("data-total",this.querySelectorAll("table tbody tr").length),this.hasAttribute("data-page")||this.setAttribute("data-page",a.has("page")?a.get("page"):1),this.hasAttribute("data-show")||this.setAttribute("data-show",a.has("show")?a.get("show"):15),this.hasAttribute("data-increment")||this.setAttribute("data-increment",15),this.setAttribute("data-pages",Math.ceil(this.getAttribute("data-total")/this.getAttribute("data-show"))),n(this,this.shadowRoot.querySelector(".pagination__wrapper"))}connectedCallback(){this.shadowRoot.querySelector(".pagination__wrapper").classList.remove("d-none")}}var w=function(t,e){Array.from(t.querySelectorAll(":scope > li")).forEach(((t,a)=>{var r=t.textContent.toLowerCase();t.classList.add("d-none"),r.includes(e.toLowerCase())&&t.classList.remove("d-none")})),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Filtered list",value:e})};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"filterlist"});class L extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});var t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e=document.createElement("template");e.innerHTML='\n <style>\n @import "'.concat(t,'/css/core.min.css";\n ').concat(this.hasAttribute("css")?'@import "'.concat(this.getAttribute("css"),'";'):"",'\n \n :host {\n margin-bottom: 3rem;\n display:block;\n }\n </style>\n <div class="form-control__wrapper">\n <label for="search" class="visually-hidden">Search</label>\n <span class="suffix" role="presentation"><slot name="icon"></slot></span>\n <input name="search" id="search" type="text" class="form-control" autocomplete="off">\n </div>\n <div class="list__wrapper">\n <slot></slot>\n </div>\n '),this.shadowRoot.appendChild(e.content.cloneNode(!0))}connectedCallback(){var t,e,a=this.hasAttribute("data-max-height")&&{small:"12.5rem",medium:"25rem",large:"37.5rem"}[this.getAttribute("data-max-height")]?"list__wrapper--"+this.getAttribute("data-max-height"):"";this.shadowRoot.querySelector(".list__wrapper").classList.add(a),this.querySelector("i.fa-search")||(this.innerHTML+='<i class="fa fa-light fa-search" aria-hidden="true" slot="icon"></i>'),t=this.querySelector("ul"),e=this.shadowRoot.querySelector("#search"),function(t,e){var a;e.addEventListener("keyup",(r=>{clearTimeout(a),a=setTimeout((function(){w(t,e.value)}),500)})),e.addEventListener("change",(r=>{clearTimeout(a),w(t,e.value)}))}(t,e)}}document.addEventListener("DOMContentLoaded",(function(){var r,n;window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Pageview",pageTitle:document.title}),document.addEventListener("click",(t=>{t&&t.target instanceof HTMLElement&&t.target.closest("[open] summary")?window.dataLayer.push({event:"closeDetails",detailsTitle:t.target.closest("summary").textContent}):t&&t.target instanceof HTMLElement&&t.target.closest("summary")&&window.dataLayer.push({event:"openDetails",detailsTitle:t.target.closest("summary").textContent}),t&&t.target instanceof HTMLElement&&t.target.closest("a")&&window.dataLayer.push({event:"linkClicked",linkText:t.target.closest("a").hasAttribute("title")?t.target.closest("a").getAttribute("title"):t.target.closest("a").textContent,class:t.target.closest("a").hasAttribute("class")?t.target.closest("a").getAttribute("class"):"",href:t.target.closest("a").getAttribute("href")}),t&&t.target instanceof HTMLElement&&t.target.closest("button")&&window.dataLayer.push({event:"buttonClicked",buttonText:t.target.closest("button").textContent,class:t.target.closest("button").hasAttribute("class")?t.target.closest("button").getAttribute("class"):""})})),(n=document.body).classList.add("js-enabled"),(-1!==navigator.userAgent.indexOf("MSIE")||navigator.appVersion.indexOf("Trident/")>0)&&n.classList.add("ie"),r=function(t){var e=document.querySelector('label[for="'.concat(t.replace("#",""),'"]')),a=document.querySelector(t+" summary"),r=document.querySelector("dialog".concat(t));e instanceof HTMLElement?e.click():a instanceof HTMLElement?a.click():r instanceof HTMLElement&&r.showModal()},location.hash&&r(location.hash),window.addEventListener("hashchange",(function(){r(location.hash)}),!1),addEventListener("popstate",(t=>{if("pagination"==t.state.type){var e=document.querySelector("#".concat(t.state.form)),a=document.querySelector("#".concat(t.state.form," [data-pagination]"));a?a.value=t.state.page:e.innerHTML+='<input name="page" type="hidden" data-pagination="true" value="'.concat(t.state.page,'" />'),e.dispatchEvent(new Event("submit"))}})),document.addEventListener("click",(t=>{if(t&&t.target instanceof HTMLElement&&t.target.closest("[data-modal]")){var a=t.target.closest("[data-modal]").getAttribute("data-modal"),r=document.querySelector("dialog#".concat(a));r.parentNode.closest("form")&&!r.querySelector(":scope > .dialog__close:first-child")?r.innerHTML='<button class="dialog__close" formmethod="dialog">Close</button>'.concat(r.innerHTML):!r.parentNode.closest("form")&&!r.querySelector(":scope > form:first-child")&&(r.innerHTML='<form><button class="dialog__close" formmethod="dialog">Close</button></form>'.concat(r.innerHTML));var o=r.querySelector(".youtube-embed a");o&&e(o),r.showModal(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:a})}if(t&&t.target instanceof HTMLElement&&t.target.closest("dialog[open]")){var s=t.target.closest("dialog[open]"),n=s.getBoundingClientRect();(t.clientX<n.left||t.clientX>n.right||t.clientY<n.top||t.clientY>n.bottom)&&(s.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:s.getAttribute("id")}))}if(t&&t.target instanceof HTMLElement&&t.target.closest(".dialog__wrapper > button")){var i=t.target.closest(".dialog__wrapper > button"),c="openPopover",l=t.target.closest(".dialog__wrapper > button").parentNode.querySelector(":scope > dialog");l.hasAttribute("open")?(l.close(),c="closePopover"):l.show(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:c,id:i.textContent})}})),window.customElements.get("iam-header")||window.customElements.define("iam-header",a),window.customElements.get("iam-accordion")||window.customElements.define("iam-accordion",o),window.customElements.get("iam-tabs")||window.customElements.define("iam-tabs",s),window.customElements.get("iam-table")||window.customElements.define("iam-table",b),window.customElements.get("iam-card")||window.customElements.define("iam-card",f),window.customElements.get("iam-filterlist")||window.customElements.define("iam-filterlist",L),window.customElements.get("iam-pagination")||window.customElements.define("iam-pagination",A),window.customElements.get("iam-applied-filters")||window.customElements.define("iam-applied-filters",v),Array.from(document.querySelectorAll(".nav")).forEach((t=>{(t=>{Array.from(t.querySelectorAll("details")).forEach(((t,e)=>{t.addEventListener("mouseenter",(function(e){window.matchMedia("(min-width: 62em)").matches&&t.setAttribute("open","true")}),!1),t.addEventListener("mouseleave",(function(e){window.matchMedia("(min-width: 62em)").matches&&t.removeAttribute("open")}),!1)})),"IntersectionObserver"in window&&new IntersectionObserver((t=>{var[e]=t;return e.target.classList.toggle("is-stuck",e.intersectionRatio<1)}),{threshold:[1]}).observe(t)})(t)})),Array.from(document.querySelectorAll(".testimonial")).forEach((t=>{!function(t){var e,a=t.querySelector(".testimonial__images"),r=a.querySelectorAll("img").length;if(1==r)return!1;t.classList.add("testimonial--multi"),a.addEventListener("scroll",(function(o){clearTimeout(e),e=setTimeout((function(){var e=a.scrollWidth,o=a.scrollHeight,s=a.scrollLeft,n=a.scrollTop,i=Math.round(s/e*r)+1;0==s&&0!=n&&(i=Math.round(n/o*r)+1),t.setAttribute("data-show",i),function(e){var a=t.querySelector(".btn-next"),o=t.querySelector(".btn-prev");a.setAttribute("data-go",e+1),o.setAttribute("data-go",e-1),a.removeAttribute("disabled"),o.removeAttribute("disabled"),1==e?o.setAttribute("disabled",!0):e==r&&a.setAttribute("disabled",!0)}(i)}),300)}),!1),t.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches("[data-go]")){var o=parseInt(e.getAttribute("data-go")),s=0,n=0,i=a.scrollWidth,c=a.scrollHeight;i>c?n=Math.floor(i*((o-1)/r)):s=Math.floor(c*((o-1)/r)),a.scroll({top:s,left:n,behavior:"smooth"});break}}),!1)}(t)})),Array.from(document.querySelectorAll(".carousel")).forEach((t=>{!function(t){var e,a=t.querySelector(".carousel__inner"),r=t.querySelectorAll(".carousel__item").length;t.getAttribute("data-cols");var o=t.getAttribute("data-sm-cols"),s=t.getAttribute("data-md-cols");t.querySelector(".carousel__controls a").classList.add("active"),a.addEventListener("scroll",(function(o){clearTimeout(e),e=setTimeout((function(){var e=a.clientWidth,o=a.scrollWidth,s=a.scrollLeft,n=Math.round(s/o*r)+1,i=t.querySelector(".carousel__item:last-child").offsetLeft;Array.from(t.querySelectorAll(".carousel__controls a")).forEach(((t,e)=>{t.classList.remove("active")})),t.querySelector(".control-"+n).classList.add("active"),1==n?t.querySelector(".btn-prev").setAttribute("disabled","disabled"):t.querySelector(".btn-prev").removeAttribute("disabled"),a.scrollLeft+e>i?t.querySelector(".btn-next").setAttribute("disabled","disabled"):t.querySelector(".btn-next").removeAttribute("disabled")}),100)}),!1),t.addEventListener("click",(function(e){for(var r=e.target;r&&r!=this;r=r.parentNode)if(r.matches(".carousel__controls a")){e.preventDefault(),Array.from(t.querySelectorAll(".carousel__controls a")).forEach(((t,e)=>{t.classList.remove("active")})),r.classList.add("active");var o=document.querySelector(r.getAttribute("href"));a.scroll({top:0,left:o.offsetLeft,behavior:"smooth"});break}}),!1),t.addEventListener("click",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches(".btn-next, .btn-prev")){t.preventDefault();var r=e.classList.contains("btn-prev")?a.scrollLeft-a.clientWidth:a.scrollLeft+a.clientWidth;a.scroll({top:0,left:r,behavior:"smooth"});break}}),!1),1==r&&t.classList.add("hide-btns"),o>=r&&t.classList.add("hide-sm-btns"),s>=r&&t.classList.add("hide-md-btns")}(t)})),Array.from(document.querySelectorAll("form")).forEach((t=>{!function(t){Array.from(t.querySelectorAll("[data-input-range]")).forEach(((t,e)=>{!function(t){t.addEventListener("change",(function(e){var a=parseInt(t.querySelector("[data-min] select,[data-min] input").value),r=parseInt(t.querySelector("[data-max] select,[data-max] input").value);Array.from(t.querySelectorAll("[data-min] input")).forEach(((t,e)=>{t.setAttribute("max",r)})),Array.from(t.querySelectorAll("[data-max] input")).forEach(((t,e)=>{t.setAttribute("min",a)})),Array.from(t.querySelectorAll("[data-min] select option")).forEach(((t,e)=>{parseInt(t.getAttribute("value"))>r?t.classList.add("d-none"):t.classList.remove("d-none")})),Array.from(t.querySelectorAll("[data-max] select option")).forEach(((t,e)=>{parseInt(t.getAttribute("value"))<a?t.classList.add("d-none"):t.classList.remove("d-none")}))}),!1)}(t)})),Array.from(t.querySelectorAll("[data-redirect]")).forEach(((t,e)=>{!function(t){t.addEventListener("change",(function(e){if(t.matches("[data-value-if]")){var a=t.getAttribute("data-redirect"),r=t.getAttribute("data-value-if");t.value==r&&(document.location.href=a)}else typeof t.value<"u"&&(document.location.href=t.value)}),!1)}(t)})),Array.from(t.querySelectorAll(".multiple-file-uploads")).forEach(((t,e)=>{!function(t){var e=t.querySelector(".row").cloneNode(!0),a=t.querySelector("[data-add]");t.addEventListener("click",(function(r){for(var o=r.target;o&&o!=this;o=o.parentNode){if(o.matches("[data-add]")){var s=e.cloneNode(!0);t.insertBefore(s,o),a.matches("[data-maxfiles]")&&Array.from(t.querySelectorAll(":scope > .row")).length>=a.dataset.maxfiles&&a.setAttribute("disabled","disabled");break}if(o.matches("[data-delete]")){o.closest(".row").remove(),a.matches("[data-maxfiles]")&&Array.from(t.querySelectorAll(":scope > .row")).length<a.dataset.maxfiles&&a.removeAttribute("disabled");break}}}),!1)}(t)})),t.addEventListener("change",(function(t){for(var e=t.target;e&&e!=this;e=e.parentNode)if(e.matches('[type="file"][data-filesize]')&&e.files&&e.files[0]){var a=e.dataset.filesize;e.files[0].size>a&&(e.value="",alert("File too large"));break}}),!1),t.addEventListener("change",(function(e){Array.from(t.querySelectorAll("select[data-activeif][data-equals],input[data-activeif][data-equals]")).forEach(((e,a)=>{var r=e.closest("[data-group]")?e.closest("[data-group]"):t,o=e.dataset.activeif,s=e.dataset.equals;r.querySelector('select[data-id="'.concat(o,'"],input[data-id="').concat(o,'"]')).value==s?e.removeAttribute("disabled"):(e.setAttribute("disabled","disabled"),e.value="")})),Array.from(t.querySelectorAll(".form-control__wrapper[data-displayif][data-equals]")).forEach(((e,a)=>{var r=e.closest("[data-group]")?e.closest("[data-group]"):t,o=e.dataset.activeif,s=e.dataset.equals;r.querySelector('select[data-id="'.concat(o,'"],input[data-id="').concat(o,'"]')).value==s?e.classList.remove("d-none"):e.classList.add("d-none")}))}),!1)}(t)})),Array.from(document.querySelectorAll(".youtube-embed")).forEach((e=>{new t(e)})),window.addEventListener("hashchange",(function(){var t=location.hash.replace("#",""),e=document.querySelector('label[for="'.concat(t,'"]'));e instanceof HTMLElement&&e.click()}),!1)}))}));
6
6
  //# sourceMappingURL=scripts.bundle.min.js.map