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