@iamproperty/components 7.5.1--beta7 → 7.5.1--beta8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +2 -2
- package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
- package/assets/js/components/barchart/barchart.component.min.js +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
- package/assets/js/components/calendar/calendar.component.min.js +1 -1
- package/assets/js/components/card/card.component.min.js +1 -1
- package/assets/js/components/carousel/carousel.component.min.js +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
- package/assets/js/components/content/content.component.min.js +1 -1
- package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +1 -1
- package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
- package/assets/js/components/filter-card/filter-card.component.min.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
- package/assets/js/components/input/input.component.min.js +1 -1
- package/assets/js/components/input-range/input-range.component.min.js +1 -1
- package/assets/js/components/marketing/marketing.component.min.js +1 -1
- package/assets/js/components/menu/menu.component.min.js +1 -1
- package/assets/js/components/milestone/milestone.component.min.js +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
- package/assets/js/components/modal/modal.component.min.js +1 -1
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +1 -1
- package/assets/js/components/multiselect/multiselect.component.min.js +1 -1
- package/assets/js/components/nav/nav.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.js +0 -1
- package/assets/js/components/pagination/pagination.component.min.js +2 -2
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
- package/assets/js/components/password/password.component.min.js +1 -1
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js +1 -1
- package/assets/js/components/record-card/record-card.component.min.js +1 -1
- package/assets/js/components/search/search.component.min.js +1 -1
- package/assets/js/components/slider/slider.component.min.js +1 -1
- package/assets/js/components/split-button/split-button.component.min.js +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +1 -1
- package/assets/js/components/table/table.component.min.js +4 -4
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.min.js +4 -4
- package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js +2 -2
- package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js +2 -2
- package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/components/video-card/video-card.component.min.js +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/applied-filters.js +6 -5
- package/assets/js/modules/table.js +93 -26
- package/assets/js/scripts.bundle.js +1 -1
- package/assets/js/scripts.bundle.min.js +1 -1
- package/assets/ts/components/pagination/pagination.component.ts +0 -2
- package/assets/ts/modules/applied-filters.ts +8 -5
- package/assets/ts/modules/table.ts +89 -6
- package/dist/components.es.js +29 -29
- package/dist/components.umd.js +134 -134
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta8
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
4
|
*/const k=(t,a,i,n)=>{const r=Math.tan(.375*Math.PI),s=window.innerWidth||document.body.clientWidth,o=Math.max(1,Math.floor(.01*s)),d=i-t,e=n-a,c=Math.abs(d/e),l=Math.abs(e/d);if(Math.abs(d)>o||Math.abs(e)>o){if(l<=r)return d<0?"left":"right";if(c<=r)return e<0?"top":"bottom"}else return"tap"},w=function(t){const a=t.querySelectorAll(":scope > details, :scope > a");let i=t.querySelector(":scope > .tabs__links"),n=t.querySelector(":scope .tabs__dropdown");if(t.shadowRoot&&t.shadowRoot.querySelector(".tabs__links")&&(i=t.shadowRoot.querySelector(".tabs__links")),!i){i=document.createElement("div"),i.classList.add("tabs__links");const s=document.createElement("div");s.classList.add("tabs__links__wrapper"),s.prepend(i),t.prepend(s)}n||(n=document.createElement("select"),n.classList.add("tabs__dropdown"),t.prepend(n));let r=0;a.forEach(s=>{let o=document.createElement("button");const d=document.createElement("option");if(s.matches("details")){const e=s.querySelector(":scope > summary"),c=e.classList.contains("disabled");e.classList.add("visually-hidden"),s.hasAttribute("id")&&o.setAttribute("data-id",`${s.getAttribute("id")}`),s.hasAttribute("open")&&o.setAttribute("aria-pressed",!0),o.innerHTML=`${e.innerText}`,o.classList.add("link"),o.setAttribute("data-index",r),o.setAttribute("part","tab-link"),d.innerHTML=`${e.innerText}`,d.value=e.innerText.replace(/\s+/g,"-").toLowerCase(),d.setAttribute("data-index",r),s.setAttribute("tabindex","-1"),c&&o.classList.add("disabled"),r++}else s.matches("a")&&(o=s);o.classList.add("link"),i.appendChild(o),n.appendChild(d)})},y=function(t){const a=t.querySelectorAll(":scope > details"),i=t.querySelectorAll(":scope > details > summary");let n=t.querySelector(":scope .tabs__links"),r=t.querySelectorAll(":scope .tabs__links > button");const s=t.querySelector(":scope .tabs__dropdown");let o=t.querySelector(":scope .tabs__next"),d;if(window.isClicked=!1,window.isScrolling=!1,t.shadowRoot&&(r=t.shadowRoot.querySelectorAll(".tabs__links > button"),n=t.shadowRoot.querySelector(".tabs__links"),o=t.shadowRoot.querySelector(".tabs__next")),r.forEach(e=>{e.addEventListener("click",c=>{if(c.preventDefault(),window.isClicked=!0,e.classList.contains("disabled"))return!1;r.forEach(l=>{const m=l==e;l.setAttribute("aria-pressed",m)}),n.scroll({top:0,left:e.offsetLeft,behavior:"smooth"}),f(a,e),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openTab",tabTitle:e.textContent}),e.matches(":last-child")?o?.setAttribute("disabled","disabled"):o?.removeAttribute("disabled")}),_(a,s)}),n.addEventListener("scrollend",()=>{clearTimeout(d),d=setTimeout(function(){let e=r[0],c=Math.abs(e.getBoundingClientRect().left);if(r.forEach(l=>{Math.abs(l.getBoundingClientRect().left)<c&&(c=Math.abs(l.getBoundingClientRect().left),e=l)}),window.isClicked)return window.isClicked=!1,!1;e.click(),e.focus()},500)}),i.forEach((e,c)=>{e.addEventListener("click",l=>{l.preventDefault(),r[c].click()})}),o?.addEventListener("click",e=>{e.preventDefault();const l=n.querySelector('[aria-pressed="true"]').nextSibling;l&&l.click()}),t.classList.contains("tabs--guided")){let e=0,c=0,l=0,m=0;a.forEach(p=>{p.addEventListener("touchstart",b=>{b.stopPropagation(),e=b.changedTouches[0].screenX,c=b.changedTouches[0].screenY}),p.addEventListener("touchend",b=>{b.stopPropagation(),l=b.changedTouches[0].screenX,m=b.changedTouches[0].screenY;const g=k(e,c,l,m),u=n.querySelector('[aria-pressed="true"]'),h=u.nextSibling,v=u.previousSibling;switch(g){case"left":h&&h.click();break;case"right":v&&v.click();break}})})}},f=function(t,a){t.forEach((i,n)=>{const r=a.getAttribute("data-index")==n;r?i.setAttribute("open",r):i.removeAttribute("open")})},_=function(t,a){a.addEventListener("change",i=>{i.preventDefault();const n=a.options[a.selectedIndex];f(t,n),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openTab",tabTitle:n.innerText})})},x=function(t){if(!t.querySelector(":scope > details"))return!1;const a=t.querySelectorAll(":scope > details"),i=t.shadowRoot.querySelectorAll(".tabs__links > button");location.hash&&t.shadowRoot.querySelector(`.tabs__links [data-id="${location.hash.replace("#","")}"]`)?(t.shadowRoot.querySelector(`[data-id="${location.hash.replace("#","")}"]`).setAttribute("aria-pressed",!0),t.querySelector(`details[id="${location.hash.replace("#","")}"]`).setAttribute("open",!0)):t.querySelector("details[open]")||(a[0].setAttribute("open",!0),i[0].setAttribute("aria-pressed",!0))},z=function(t){w(t),y(t),x(t)};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"tabs"});class L extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const a=document.createElement("template");a.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta8
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
4
|
*/const p=o=>{window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:o})},h=(o,t,e)=>(window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementAdded",element:t}),e.forEach(a=>{o.addEventListener(a,function(d){const r={event:a,element:t,target:d.target};Object.keys(d.detail).forEach(i=>{const n=d.detail[i];r[i]=n}),window.dataLayer.push(r)})}),!0),b=`<div class="card__head" part="head">
|
|
5
5
|
<slot name="head"></slot>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta8
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
4
|
*/const o=i=>{window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:i})};o("iam-word-count");class n extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const t=document.createElement("template");t.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -85,18 +85,17 @@ function createAppliedFilters(container, filters) {
|
|
|
85
85
|
// Check for which inputs have been set, setting true sets the filter as set (blue)
|
|
86
86
|
checkForChecked(true);
|
|
87
87
|
// Create the main event listener for the component watching for inputs to change
|
|
88
|
-
container.
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
Array.from(container.querySelectorAll('input[data-filter-text]')).forEach((input) => {
|
|
89
|
+
input.addEventListener('change', function (event) {
|
|
90
|
+
var _a;
|
|
91
91
|
const setFilter = container.closest('dialog') ? false : true;
|
|
92
|
-
const input = event.target.closest('input[data-filter-text]');
|
|
93
92
|
if (!container.hasAttribute('data-keep-same') && !container.querySelector('dialog'))
|
|
94
93
|
addFilterButton(filters, input, setFilter);
|
|
95
94
|
if (setFilter) {
|
|
96
95
|
const event = new CustomEvent('update');
|
|
97
96
|
(_a = container.parentElement.closest('iam-applied-filters')) === null || _a === void 0 ? void 0 : _a.dispatchEvent(event);
|
|
98
97
|
}
|
|
99
|
-
}
|
|
98
|
+
});
|
|
100
99
|
});
|
|
101
100
|
const filterClicked = (filter) => {
|
|
102
101
|
const names = filter.getAttribute('data-name').split(',');
|
|
@@ -117,6 +116,8 @@ function createAppliedFilters(container, filters) {
|
|
|
117
116
|
else {
|
|
118
117
|
input.checked = false;
|
|
119
118
|
}
|
|
119
|
+
const changeEvent = new CustomEvent('change');
|
|
120
|
+
input === null || input === void 0 ? void 0 : input.dispatchEvent(changeEvent);
|
|
120
121
|
}
|
|
121
122
|
}
|
|
122
123
|
filter.remove();
|
|
@@ -88,6 +88,7 @@ export const paginateTable = (component, table, form, pagination, callback) => {
|
|
|
88
88
|
}
|
|
89
89
|
});
|
|
90
90
|
pagination.addEventListener('update-page', (event) => {
|
|
91
|
+
console.log('update page');
|
|
91
92
|
if (form.querySelector('[name=page]').value != event.detail.page) {
|
|
92
93
|
form.querySelector('[name=page]').value = event.detail.page;
|
|
93
94
|
const updateEvent = new CustomEvent('update-page', { detail: { page: event.detail.page } });
|
|
@@ -604,32 +605,45 @@ export const addFilterEventListeners = (component, table, form, pagination, save
|
|
|
604
605
|
}
|
|
605
606
|
*/
|
|
606
607
|
};
|
|
607
|
-
|
|
608
|
+
/*
|
|
609
|
+
if (component.querySelector('iam-actionbar[data-search]')) {
|
|
608
610
|
component.querySelector('iam-actionbar[data-search]').addEventListener('search-submit', (event) => {
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
611
|
+
if (form.querySelector('input[data-search]')) {
|
|
612
|
+
form.querySelector('input[data-search]').value = event.detail.search;
|
|
613
|
+
} else {
|
|
614
|
+
form.insertAdjacentHTML(
|
|
615
|
+
'beforeend',
|
|
616
|
+
`<input type="hidden" name="search" data-search="${component.querySelector('iam-actionbar[data-search]').getAttribute('data-search')}" value="${event.detail.search}"/>`
|
|
617
|
+
);
|
|
618
|
+
}
|
|
619
|
+
|
|
620
|
+
const submitEvent = new CustomEvent('search-submit', {
|
|
621
|
+
detail: event.details,
|
|
622
|
+
});
|
|
623
|
+
component.dispatchEvent(submitEvent);
|
|
624
|
+
|
|
625
|
+
|
|
626
|
+
clearTimeout(timer);
|
|
627
|
+
|
|
628
|
+
if(component.tagName != "IAM-TABLE-NO-SUBMIT")
|
|
629
|
+
formSubmit(event);
|
|
622
630
|
});
|
|
623
|
-
|
|
624
|
-
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
if (component.querySelector('iam-actionbar') && !component.querySelector('iam-actionbar').closest('form')) {
|
|
625
634
|
component.querySelector('iam-actionbar').addEventListener('change', (event) => {
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
635
|
+
if (!form.querySelector('.duplicate-actionbar')) {
|
|
636
|
+
form.insertAdjacentHTML(
|
|
637
|
+
'beforeend',
|
|
638
|
+
`<div class="duplicate-actionbar" style="visibility: hidden; pointer-events: none; position: absolute;"></div>`
|
|
639
|
+
);
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
form.querySelector('.duplicate-actionbar').innerHTML = component.querySelector('iam-actionbar').innerHTML;
|
|
643
|
+
filterTable(component, table, form, pagination);
|
|
631
644
|
});
|
|
632
|
-
|
|
645
|
+
}
|
|
646
|
+
*/
|
|
633
647
|
form.addEventListener('keyup', (event) => {
|
|
634
648
|
clearTimeout(timer);
|
|
635
649
|
if (event && event.target instanceof HTMLElement && event.target.closest('input[data-search]')) {
|
|
@@ -1030,13 +1044,34 @@ export const setupAjaxTable = (component, table, form, pagination) => {
|
|
|
1030
1044
|
loadAjaxTable(component, table, form, pagination);
|
|
1031
1045
|
const actionbar = component.querySelector('iam-actionbar');
|
|
1032
1046
|
form.addEventListener('submit', (event) => {
|
|
1047
|
+
Array.from(form.querySelectorAll('[data-duplicate]')).forEach((element) => {
|
|
1048
|
+
const id = element.getAttribute('data-duplicate');
|
|
1049
|
+
if (document.querySelector(`[id="${id}"]`)) {
|
|
1050
|
+
document.querySelector(`[id="${id}"]`).checked = element.checked;
|
|
1051
|
+
}
|
|
1052
|
+
});
|
|
1033
1053
|
loadAjaxTable(component, table, form, pagination);
|
|
1034
1054
|
event.preventDefault();
|
|
1035
1055
|
});
|
|
1036
1056
|
form.addEventListener('change', (event) => {
|
|
1057
|
+
var _a;
|
|
1037
1058
|
if (!event.target.closest('iam-modal')) {
|
|
1038
1059
|
loadAjaxTable(component, table, form, pagination);
|
|
1039
1060
|
}
|
|
1061
|
+
if (event && event.target instanceof HTMLElement && event.target.hasAttribute('id')) {
|
|
1062
|
+
const id = event.target.getAttribute('id');
|
|
1063
|
+
if (document.querySelector(`[data-duplicate="${id}"]`)) {
|
|
1064
|
+
document.querySelector(`[data-duplicate="${id}"]`).checked = event.target.checked;
|
|
1065
|
+
const changeEvent = new CustomEvent('change');
|
|
1066
|
+
(_a = document.querySelector(`[data-duplicate="${id}"]`)) === null || _a === void 0 ? void 0 : _a.dispatchEvent(changeEvent);
|
|
1067
|
+
}
|
|
1068
|
+
}
|
|
1069
|
+
if (event && event.target instanceof HTMLElement && event.target.hasAttribute('data-duplicate') && !event.target.closest('iam-modal')) {
|
|
1070
|
+
const id = event.target.getAttribute('data-duplicate');
|
|
1071
|
+
if (document.querySelector(`[id="${id}"]`)) {
|
|
1072
|
+
document.querySelector(`[id="${id}"]`).checked = event.target.checked;
|
|
1073
|
+
}
|
|
1074
|
+
}
|
|
1040
1075
|
});
|
|
1041
1076
|
if (actionbar) {
|
|
1042
1077
|
actionbar.addEventListener('change', (event) => {
|
|
@@ -1056,6 +1091,38 @@ export const setupAjaxTable = (component, table, form, pagination) => {
|
|
|
1056
1091
|
loadAjaxTable(component, table, form, pagination);
|
|
1057
1092
|
});
|
|
1058
1093
|
}
|
|
1094
|
+
// mimic fields
|
|
1095
|
+
const fields = [];
|
|
1096
|
+
Array.from(form.querySelectorAll('[data-mimic]')).forEach((input) => {
|
|
1097
|
+
input.addEventListener('change', (event) => {
|
|
1098
|
+
loadAjaxTable(component, table, form, pagination);
|
|
1099
|
+
});
|
|
1100
|
+
});
|
|
1101
|
+
Array.from(form.querySelectorAll('[data-mimic]')).forEach((input) => {
|
|
1102
|
+
const mimicField = input.getAttribute('data-mimic');
|
|
1103
|
+
Array.from(document.querySelectorAll(`[name="${mimicField}"]`)).forEach((mimicInput) => {
|
|
1104
|
+
if (!fields.includes(mimicInput)) {
|
|
1105
|
+
fields.push(mimicInput);
|
|
1106
|
+
}
|
|
1107
|
+
});
|
|
1108
|
+
});
|
|
1109
|
+
fields.forEach((input) => {
|
|
1110
|
+
input.addEventListener('change', (event) => {
|
|
1111
|
+
const name = input.getAttribute('name');
|
|
1112
|
+
const mimicInput = document.querySelector(`[data-mimic="${name}"]`);
|
|
1113
|
+
let valueToSend = '';
|
|
1114
|
+
Array.from(document.querySelectorAll(`[name="${name}"]:checked`)).forEach((input) => {
|
|
1115
|
+
if (valueToSend == '')
|
|
1116
|
+
valueToSend = input.value;
|
|
1117
|
+
else
|
|
1118
|
+
valueToSend += ',' + input.value;
|
|
1119
|
+
});
|
|
1120
|
+
console.log(valueToSend);
|
|
1121
|
+
mimicInput.value = valueToSend;
|
|
1122
|
+
const changeEvent = new CustomEvent('change');
|
|
1123
|
+
mimicInput === null || mimicInput === void 0 ? void 0 : mimicInput.dispatchEvent(changeEvent);
|
|
1124
|
+
});
|
|
1125
|
+
});
|
|
1059
1126
|
};
|
|
1060
1127
|
// #region ajax tables functions
|
|
1061
1128
|
export const loadAjaxTable = function (component, table, form, pagination) {
|
|
@@ -1186,10 +1253,10 @@ export const loadAjaxTable = function (component, table, form, pagination) {
|
|
|
1186
1253
|
});
|
|
1187
1254
|
tbody.appendChild(table_row);
|
|
1188
1255
|
});
|
|
1189
|
-
component.setAttribute('data-total', parseInt(totalNumber));
|
|
1190
|
-
component.setAttribute('data-page', parseInt(currentPage));
|
|
1191
|
-
pagination.setAttribute('data-total', totalNumber);
|
|
1192
|
-
pagination.setAttribute('data-page', currentPage);
|
|
1256
|
+
//component.setAttribute('data-total', parseInt(totalNumber));
|
|
1257
|
+
//component.setAttribute('data-page', parseInt(currentPage));
|
|
1258
|
+
//pagination.setAttribute('data-total', totalNumber);
|
|
1259
|
+
//pagination.setAttribute('data-page', currentPage);
|
|
1193
1260
|
Array.from(form.querySelectorAll('[data-ajax-query]')).forEach((queryElement) => {
|
|
1194
1261
|
const totalNumber = resolvePath(response, queryElement.getAttribute('data-ajax-query'), '');
|
|
1195
1262
|
if (queryElement.hasAttribute('data-total'))
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta8
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
4
|
*/(function(v){typeof define=="function"&&define.amd?define(v):v()})((function(){"use strict";var v=a=>{a.classList.add("js-enabled"),(navigator.userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0)&&a.classList.add("ie")},C=a=>{var e=function(o){var r=document.querySelector('label[for="'.concat(o.replace("#",""),'"]')),i=document.querySelector(o+" summary"),c=document.querySelector("dialog".concat(o)),n=document.querySelector("detail".concat(o));r instanceof HTMLElement?r.click():i instanceof HTMLElement?i.click():c instanceof HTMLElement?c.showModal():n instanceof HTMLElement&&n.addAttribute("open")};location.hash&&e(location.hash),window.addEventListener("hashchange",function(){e(location.hash)},!1),addEventListener("popstate",t=>{if(t&&t.state&&t.state.type&&t.state.type=="pagination"){var o=document.querySelector("#".concat(t.state.form)),r=document.querySelector("#".concat(t.state.form," [data-pagination]"));r?r.value=t.state.page:o.innerHTML+='<input name="page" type="hidden" data-pagination="true" value="'.concat(t.state.page,'" />'),o.dispatchEvent(new Event("submit"))}}),Array.from(document.querySelectorAll("form")).forEach(t=>{t.addEventListener("submit",o=>{var r;t.querySelector(":invalid")&&(t.classList.add("was-validated"),(r=t?.querySelector("input:invalid"))===null||r===void 0||r.scrollIntoView(),o.preventDefault())})}),document.addEventListener("click",t=>{var o;if(t&&t.target instanceof HTMLElement&&t.target.matches("form button:not([type=button])")){var r=t.target.closest("form");Array.from(r.querySelectorAll("[data-password-type]")).forEach(i=>{i.setAttribute("type","password")}),(r.querySelector(":invalid")||r.querySelector('.pwd-checker[data-strength="1"]')||r.querySelector('.pwd-checker[data-strength="2"]'))&&(r.classList.add("was-validated"),(o=r?.querySelector("input:invalid"))===null||o===void 0||o.scrollIntoView(),t.preventDefault()),r.querySelector("iam-multiselect[data-is-required][data-error]")&&(r.classList.add("was-validated"),t.preventDefault())}}),document.addEventListener("keydown",t=>{t.key==="Escape"&&document.querySelector(".dialog--transactional[open], .dialog--acknowledgement[open]")&&(t.preventDefault(),t.stopPropagation())}),Array.from(document.querySelectorAll("label progress")).forEach(t=>{var o=t.closest("label");o.setAttribute("data-percent",t.getAttribute("value"))})},x=a=>(Array.from(a.querySelectorAll("dialog[open]")).forEach(e=>{var t=e.closest(".dialog__wrapper");t||(e.removeAttribute("open"),e.showModal(),e.focus(),A(e))}),a.addEventListener("click",e=>{if(e.target.tagName=="IAM-ACTIONBAR")return!1;if(e&&e.target instanceof HTMLElement&&e.target.closest("[data-modal]")){var t=e.target.closest("[data-modal]"),o=t.hasAttribute("data-modal")?t.getAttribute("data-modal"):t.getAttribute("data-filter"),r=document.querySelector("dialog#".concat(o));if(document.querySelector("iam-modal#".concat(o))||document.querySelector("iam-multi-step-modal#".concat(o)))return!1;if(A(r),r.showModal(),r.focus(),!r.querySelector("iam-multi-step")){var i=r.offsetWidth;r.setAttribute("style","max-width: ".concat(i,"px;"))}Array.from(r.querySelectorAll("[data-duplicate]")).forEach(f=>{var O=f.getAttribute("data-duplicate"),M=document.getElementById(O);if(f.checked!=M.checked){f.checked=M.checked;var F=new Event("change");f.dispatchEvent(F)}}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:o})}if(e&&e.target instanceof HTMLElement&&e.target.closest("button.dialog__close")){var c=e.target.closest("dialog[open]");e.preventDefault(),c.close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(f=>{f.classList.remove("active")});var n=new CustomEvent("dialog-closed",{bubbles:!0,cancelable:!0,detail:{modalId:c.id}});e.target.dispatchEvent(n),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:c.getAttribute("id")})}if(e&&e.target instanceof HTMLElement&&e.target.closest('button[formmethod="dialog"]')){var p=e.target.closest("dialog[open]");Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(f=>{f.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:p.getAttribute("id")})}if(e&&e.target instanceof HTMLElement&&e.target.closest("dialog[open]")){var d=e.target.closest("dialog[open]"),u=window.getComputedStyle(d);if(u.display==="contents"&&(d=d.parentNode.closest("dialog[open]")),!d.classList.contains("dialog--transactional")&&!d.classList.contains("dialog--acknowledgement")){var l=d.getBoundingClientRect();(e.clientX<l.left||e.clientX>l.right||e.clientY<l.top||e.clientY>l.bottom)&&(e.target.closest("dialog *")||d.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:d.getAttribute("id")}))}}if(e&&e.target instanceof HTMLElement&&e.target.closest(".dialog__wrapper > button")){var s=e.target.closest(".dialog__wrapper > button"),L=s.parentNode;if(L.querySelector("dialog")){e.stopPropagation();var S="openPopover",y=L.querySelector(":scope > dialog");if(document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]")!=y&&s.closest("dialog[open]")!=document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(f=>{f.removeAttribute("aria-expanded")}),y.hasAttribute("open"))y.close(),S="closePopover",y.removeAttribute("style"),s.removeAttribute("aria-expanded");else{y.show(),s.setAttribute("aria-expanded",!0);var E=s.getBoundingClientRect(),q=E.top,k=E.left;if(s.closest("iam-table")){var T=s.closest("iam-table").parentNode.getBoundingClientRect();q-=T.top,k-=T.left}y.classList.contains("dialog--fix")&&y.setAttribute("style","position:fixed;top: ".concat(q,"px; left: ").concat(k,"px; margin: 3rem 0 0 0;"))}var h=y.getBoundingClientRect(),_=h.bottom-window.scrollY,j=window.innerHeight-window.scrollY;if(_>j){var P=y.hasAttribute("style")?y.getAttribute("style")+" ":"";y.setAttribute("style",P+"transform: translate(0, calc(-100% - 4rem))"),h=y.getBoundingClientRect();var R=h.top-window.scrollY;R<100&&y.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:S,id:s.textContent})}}e&&e.target instanceof HTMLElement&&!e.target.closest("dialog[open]")&&!e.target.closest(".dialog__wrapper > button")&&(document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]")&&document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper:not([data-keep-open]) > button")).forEach(f=>{f.removeAttribute("aria-expanded")}))}),null),A=a=>{if(a&&!a.querySelector(":scope .mh-lg")&&!a.querySelector("iam-multi-step")){a.innerHTML='<div class="mh-lg">'.concat(a.innerHTML,"</div>");var e=a.querySelector(".mh-lg"),t=a.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(t){var o=t.previousSibling;e.before(t),o&&t.before(o)}}a&&!a.querySelector(":scope > button:first-child")&&a.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')};function H(){window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Pageview",pageTitle:document.title}),document.addEventListener("click",a=>{var e=a.target.closest("[open] summary");if(e)window.dataLayer.push({event:"closeDetails",detailsTitle:e.textContent||""});else{var t=a.target.closest("summary"),o=a.target.closest("a"),r=a.target.closest("button");t&&window.dataLayer.push({event:"openDetails",detailsTitle:t.textContent||""}),o&&window.dataLayer.push({event:"linkClicked",linkText:o.hasAttribute("title")?o.getAttribute("title")||"":o.textContent||"",class:o.hasAttribute("class")&&o.getAttribute("class")||"",href:o.getAttribute("href")||""}),r&&window.dataLayer.push({event:"buttonClicked",buttonText:r.textContent||"",class:r.hasAttribute("class")&&r.getAttribute("class")||""})}})}window.triggerDynamicEvent=function(a){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"change";console.log("event"),a.hasAttribute("data-change-events")&&e=="change"&&g(a,a.getAttribute("data-change-events")),a.hasAttribute("data-click-events")&&e=="click"&&g(a,a.getAttribute("data-click-events"))};var B=()=>{document.addEventListener("change",a=>{a&&a.target instanceof HTMLElement&&a.target.closest("[data-change-events]")&&g(a.target,a.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("keyup",a=>{a&&a.target instanceof HTMLElement&&a.target.closest("[data-change-events]")&&g(a.target,a.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("click",a=>{a&&a.target instanceof HTMLElement&&a.target.closest("[data-click-events]")&&g(a.target,a.target.closest("[data-click-events]").getAttribute("data-click-events"))})},g=(a,e)=>{if(e||(e=a.parentNode.getAttribute("data-change-events")),!e)return!1;Array.from(JSON.parse(e)).forEach(t=>{I(a,t)})},I=(a,e)=>{if("matches"in e)return e.matches=="any"||a.value==e.matches?m(a,e,"if"):m(a,e,"else"),!1;if("in-list"in e){var t=document.querySelector("".concat(e["in-list"],' option[value="').concat(a.value,'"]'));return document.querySelector("".concat(e["in-list"],' option[value="').concat(a.value,'"]'))?m(t,e,"if"):m(t,e,"else"),!1}else"event"in e&&m(a,e,"event")},m=(a,e,t)=>{if(!(t in e))return!1;switch(e[t]){case"hide":if(document.querySelector(e.target)){var o=document.querySelector(e.target);o.classList.add("js-hide"),Array.from(o.querySelectorAll("[data-required]")).forEach(n=>{n.removeAttribute("required")})}break;case"show":if(document.querySelector(e.target)){var r=document.querySelector(e.target);r.classList.remove("js-hide"),Array.from(r.querySelectorAll("[data-required]")).forEach(n=>{n.closest(".js-hide")||n.setAttribute("required","true")})}break;case"populate-form":V(a,e);break;case"dispatchEvent":var i=new Event(e.value);document.querySelector("".concat(e.target)).dispatchEvent(i);break;case"setAttribute":Array.from(document.querySelectorAll("".concat(e.target))).forEach(function(n){n.setAttribute(e.attribute,e.value)});break;case"focus":document.querySelector("".concat(e.target)).focus();break;case"removeAttribute":Array.from(document.querySelectorAll("".concat(e.target))).forEach(function(n){n.removeAttribute(e.attribute)});break;case"updateValue":document.querySelector("".concat(e.target)).value=e.value?e.value:"";var c=new Event("change");document.querySelector("".concat(e.target)).dispatchEvent(c);break;case"submitForm":document.querySelector("".concat(e.target)).submit();break;case"openLink":document.querySelector("".concat(e.target)).value&&(window.location.href=document.querySelector("".concat(e.target)).value);break}},V=function(e,t){var o=JSON.parse(e.getAttribute("data-values")),r=document.querySelector(t.target);if(!o)return!1;Object.keys(o).forEach(i=>{document.getElementById(i)&&document.getElementById(i).tagName=="SPAN"&&(document.getElementById(i).innerHTML=o[i]),r.querySelector('select[name="'.concat(i,'"] [value="').concat(o[i],'"]'))?(r.querySelector('select[name="'.concat(i,'"]')).value=o[i],e.hasAttribute("data-lock-fields")&&(r.querySelector('select[name="'.concat(i,'"]')).disabled=!0)):r.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(o[i],'"]'))?(Array.from(r.querySelectorAll('input[name="'.concat(i,'"][type="radio"]'))).forEach(function(c){c.disabled=!0}),r.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(o[i],'"]')).checked=!0,r.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(o[i],'"]')).disabled=!1):r.querySelector('input[name="'.concat(i,'"]'))&&(r.querySelector('input[name="'.concat(i,'"]')).value=o[i],e.hasAttribute("data-lock-fields")&&r.querySelector('input[name="'.concat(i,'"]')).setAttribute("readonly","true"))})},w=function(a,e,t,o){function r(i){return i instanceof t?i:new t(function(c){c(i)})}return new(t||(t=Promise))(function(i,c){function n(u){try{d(o.next(u))}catch(l){c(l)}}function p(u){try{d(o.throw(u))}catch(l){c(l)}}function d(u){u.done?i(u.value):r(u.value).then(n,p)}d((o=o.apply(a,e||[])).next())})},D=a=>w(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield b()),setTimeout(()=>w(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield b())}),"2000"),a.addEventListener("click",e=>w(void 0,void 0,void 0,function*(){var t=e.target.closest(".youtube-link[data-youtube]");if(t||(t=e.target.closest(".vimeo-link[data-vimeo]")),t&&t.hasAttribute("data-youtube")){e.preventDefault(),document.body.classList.contains("youtubeLoaded")||(yield b());var o="youtube-"+t.getAttribute("data-youtube");document.getElementById("".concat(o,"-dialog"))||document.body.insertAdjacentHTML("beforeend",'<dialog id="'.concat(o,'-dialog"><div class="embed" id="').concat(o,'"></div></dialog>'));var r=document.getElementById("".concat(o,"-dialog")),i=document.getElementById(o),c=new CustomEvent("play-video",{detail:{"Video Type":"YoutTube",ID:t.getAttribute("data-youtube")}});t.dispatchEvent(c),window.dataLayer.push(c.detail),N(i,t.getAttribute("data-youtube")),r.showModal(),r.addEventListener("close",()=>{window.player[i.getAttribute("id")]&&typeof window.player[i.getAttribute("id")].pauseVideo=="function"&&window.player[i.getAttribute("id")].pauseVideo();var s=new CustomEvent("close-video",{detail:{"Video Type":"YoutTube",ID:t.getAttribute("data-youtube")}});t.dispatchEvent(s),window.dataLayer.push(s.detail)})}else if(t&&t.hasAttribute("data-vimeo")){e.preventDefault();var n="vimeo-"+t.getAttribute("data-youtube");document.getElementById("".concat(n,"-dialog"))||document.body.insertAdjacentHTML("beforeend",'<dialog id="'.concat(n,'-dialog"><div class="embed" id="').concat(n,'"></div></dialog>'));var p=document.getElementById("".concat(n,"-dialog")),d=document.getElementById(n),u=t.getAttribute("data-vimeo"),l=new CustomEvent("play-video",{detail:{"Video Type":"Vimeo",ID:u}});t.dispatchEvent(l),window.dataLayer.push(l.detail),d.querySelector("iframe")||(d.innerHTML='<iframe src="https://player.vimeo.com/video/'.concat(u,'?autoplay=1" width="100%" height="100%" frameborder="0" allow="autoplay; encrypted-media" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>')),p.showModal(),p.addEventListener("close",()=>{d.innerHTML="";var s=new CustomEvent("close-video",{detail:{"Video Type":"Vimeo",ID:t.getAttribute("data-vimeo")}});t.dispatchEvent(s),window.dataLayer.push(s.detail)})}}))}),b=()=>w(void 0,void 0,void 0,function*(){return new Promise((a,e)=>{var t=new Image;t.onload=function(){var o=document.createElement("script");o.src="https://www.youtube.com/iframe_api";var r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(o,r),document.body.classList.add("youtubeLoaded"),a(!0)},t.onerror=function(){e(!1)},t.src="https://youtube.com/favicon.ico"})}),N=(a,e)=>w(void 0,void 0,void 0,function*(){typeof window.player>"u"&&(window.player=[]);var t=a.getAttribute("id");if(typeof window.player[t]<"u"&&typeof window.player[t].pauseVideo=="function")return window.player[t].playVideo(),!1;window.player[t]=new YT.Player(t,{height:"100%",width:"100%",videoId:e,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:o,onStateChange:i}});function o(c){c.target.playVideo()}var r=!1;function i(c){if(c.data==YT.PlayerState.PLAYING&&!r){var n=document.getElementById(t);n.classList.add("player-ready"),r=!0}}}),Y=function(a,e,t,o){function r(i){return i instanceof t?i:new t(function(c){c(i)})}return new(t||(t=Promise))(function(i,c){function n(u){try{d(o.next(u))}catch(l){c(l)}}function p(u){try{d(o.throw(u))}catch(l){c(l)}}function d(u){u.done?i(u.value):r(u.value).then(n,p)}d((o=o.apply(a,e||[])).next())})};document.addEventListener("DOMContentLoaded",()=>Y(void 0,void 0,void 0,function*(){H(),B(),v(document.body),C(),x(document.body),D(document.body)}))}));
|
|
5
5
|
//# sourceMappingURL=scripts.bundle.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta8
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
4
|
*/
|
|
5
5
|
!function(e){"function"==typeof define&&define.amd?define(e):e()}(function(){"use strict";var e=e=>{if(e&&!e.querySelector(":scope .mh-lg")&&!e.querySelector("iam-multi-step")){e.innerHTML='<div class="mh-lg">'.concat(e.innerHTML,"</div>");var t=e.querySelector(".mh-lg"),a=e.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(a){var o=a.previousSibling;t.before(a),o&&a.before(o)}}e&&!e.querySelector(":scope > button:first-child")&&e.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')};window.triggerDynamicEvent=function(e){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"change";console.log("event"),e.hasAttribute("data-change-events")&&"change"==a&&t(e,e.getAttribute("data-change-events")),e.hasAttribute("data-click-events")&&"click"==a&&t(e,e.getAttribute("data-click-events"))};var t=(e,t)=>{if(t||(t=e.parentNode.getAttribute("data-change-events")),!t)return!1;Array.from(JSON.parse(t)).forEach(t=>{a(e,t)})},a=(e,t)=>{if("matches"in t)return"any"==t.matches||e.value==t.matches?o(e,t,"if"):o(e,t,"else"),!1;if("in-list"in t){var a=document.querySelector("".concat(t["in-list"],' option[value="').concat(e.value,'"]'));return document.querySelector("".concat(t["in-list"],' option[value="').concat(e.value,'"]'))?o(a,t,"if"):o(a,t,"else"),!1}"event"in t&&o(e,t,"event")},o=(e,t,a)=>{if(!(a in t))return!1;switch(t[a]){case"hide":if(document.querySelector(t.target)){var o=document.querySelector(t.target);o.classList.add("js-hide"),Array.from(o.querySelectorAll("[data-required]")).forEach(e=>{e.removeAttribute("required")})}break;case"show":if(document.querySelector(t.target)){var r=document.querySelector(t.target);r.classList.remove("js-hide"),Array.from(r.querySelectorAll("[data-required]")).forEach(e=>{e.closest(".js-hide")||e.setAttribute("required","true")})}break;case"populate-form":n(e,t);break;case"dispatchEvent":var i=new Event(t.value);document.querySelector("".concat(t.target)).dispatchEvent(i);break;case"setAttribute":Array.from(document.querySelectorAll("".concat(t.target))).forEach(function(e){e.setAttribute(t.attribute,t.value)});break;case"focus":document.querySelector("".concat(t.target)).focus();break;case"removeAttribute":Array.from(document.querySelectorAll("".concat(t.target))).forEach(function(e){e.removeAttribute(t.attribute)});break;case"updateValue":document.querySelector("".concat(t.target)).value=t.value?t.value:"";var c=new Event("change");document.querySelector("".concat(t.target)).dispatchEvent(c);break;case"submitForm":document.querySelector("".concat(t.target)).submit();break;case"openLink":document.querySelector("".concat(t.target)).value&&(window.location.href=document.querySelector("".concat(t.target)).value)}},n=function(e,t){var a=JSON.parse(e.getAttribute("data-values")),o=document.querySelector(t.target);if(!a)return!1;Object.keys(a).forEach(t=>{document.getElementById(t)&&"SPAN"==document.getElementById(t).tagName&&(document.getElementById(t).innerHTML=a[t]),o.querySelector('select[name="'.concat(t,'"] [value="').concat(a[t],'"]'))?(o.querySelector('select[name="'.concat(t,'"]')).value=a[t],e.hasAttribute("data-lock-fields")&&(o.querySelector('select[name="'.concat(t,'"]')).disabled=!0)):o.querySelector('input[name="'.concat(t,'"][type="radio"][value="').concat(a[t],'"]'))?(Array.from(o.querySelectorAll('input[name="'.concat(t,'"][type="radio"]'))).forEach(function(e){e.disabled=!0}),o.querySelector('input[name="'.concat(t,'"][type="radio"][value="').concat(a[t],'"]')).checked=!0,o.querySelector('input[name="'.concat(t,'"][type="radio"][value="').concat(a[t],'"]')).disabled=!1):o.querySelector('input[name="'.concat(t,'"]'))&&(o.querySelector('input[name="'.concat(t,'"]')).value=a[t],e.hasAttribute("data-lock-fields")&&o.querySelector('input[name="'.concat(t,'"]')).setAttribute("readonly","true"))})},r=function(e,t,a,o){return new(a||(a=Promise))(function(n,r){function i(e){try{d(o.next(e))}catch(e){r(e)}}function c(e){try{d(o.throw(e))}catch(e){r(e)}}function d(e){e.done?n(e.value):function(e){return e instanceof a?e:new a(function(t){t(e)})}(e.value).then(i,c)}d((o=o.apply(e,t||[])).next())})},i=()=>r(void 0,void 0,void 0,function*(){return new Promise((e,t)=>{var a=new Image;a.onload=function(){var t=document.createElement("script");t.src="https://www.youtube.com/iframe_api";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(t,a),document.body.classList.add("youtubeLoaded"),e(!0)},a.onerror=function(){t(!1)},a.src="https://youtube.com/favicon.ico"})});document.addEventListener("DOMContentLoaded",()=>{return a=void 0,o=void 0,c=function*(){var a,o;window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Pageview",pageTitle:document.title}),document.addEventListener("click",e=>{var t=e.target.closest("[open] summary");if(t)window.dataLayer.push({event:"closeDetails",detailsTitle:t.textContent||""});else{var a=e.target.closest("summary"),o=e.target.closest("a"),n=e.target.closest("button");a&&window.dataLayer.push({event:"openDetails",detailsTitle:a.textContent||""}),o&&window.dataLayer.push({event:"linkClicked",linkText:o.hasAttribute("title")?o.getAttribute("title")||"":o.textContent||"",class:o.hasAttribute("class")&&o.getAttribute("class")||"",href:o.getAttribute("href")||""}),n&&window.dataLayer.push({event:"buttonClicked",buttonText:n.textContent||"",class:n.hasAttribute("class")&&n.getAttribute("class")||""})}}),document.addEventListener("change",e=>{e&&e.target instanceof HTMLElement&&e.target.closest("[data-change-events]")&&t(e.target,e.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("keyup",e=>{e&&e.target instanceof HTMLElement&&e.target.closest("[data-change-events]")&&t(e.target,e.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("click",e=>{e&&e.target instanceof HTMLElement&&e.target.closest("[data-click-events]")&&t(e.target,e.target.closest("[data-click-events]").getAttribute("data-click-events"))}),(o=document.body).classList.add("js-enabled"),(-1!==navigator.userAgent.indexOf("MSIE")||navigator.appVersion.indexOf("Trident/")>0)&&o.classList.add("ie"),a=function(e){var t=document.querySelector('label[for="'.concat(e.replace("#",""),'"]')),a=document.querySelector(e+" summary"),o=document.querySelector("dialog".concat(e)),n=document.querySelector("detail".concat(e));t instanceof HTMLElement?t.click():a instanceof HTMLElement?a.click():o instanceof HTMLElement?o.showModal():n instanceof HTMLElement&&n.addAttribute("open")},location.hash&&a(location.hash),window.addEventListener("hashchange",function(){a(location.hash)},!1),addEventListener("popstate",e=>{if(e&&e.state&&e.state.type&&"pagination"==e.state.type){var t=document.querySelector("#".concat(e.state.form)),a=document.querySelector("#".concat(e.state.form," [data-pagination]"));a?a.value=e.state.page:t.innerHTML+='<input name="page" type="hidden" data-pagination="true" value="'.concat(e.state.page,'" />'),t.dispatchEvent(new Event("submit"))}}),Array.from(document.querySelectorAll("form")).forEach(e=>{e.addEventListener("submit",t=>{var a;e.querySelector(":invalid")&&(e.classList.add("was-validated"),null===(a=e?.querySelector("input:invalid"))||void 0===a||a.scrollIntoView(),t.preventDefault())})}),document.addEventListener("click",e=>{var t;if(e&&e.target instanceof HTMLElement&&e.target.matches("form button:not([type=button])")){var a=e.target.closest("form");Array.from(a.querySelectorAll("[data-password-type]")).forEach(e=>{e.setAttribute("type","password")}),(a.querySelector(":invalid")||a.querySelector('.pwd-checker[data-strength="1"]')||a.querySelector('.pwd-checker[data-strength="2"]'))&&(a.classList.add("was-validated"),null===(t=a?.querySelector("input:invalid"))||void 0===t||t.scrollIntoView(),e.preventDefault()),a.querySelector("iam-multiselect[data-is-required][data-error]")&&(a.classList.add("was-validated"),e.preventDefault())}}),document.addEventListener("keydown",e=>{"Escape"===e.key&&document.querySelector(".dialog--transactional[open], .dialog--acknowledgement[open]")&&(e.preventDefault(),e.stopPropagation())}),Array.from(document.querySelectorAll("label progress")).forEach(e=>{e.closest("label").setAttribute("data-percent",e.getAttribute("value"))}),(t=>{Array.from(t.querySelectorAll("dialog[open]")).forEach(t=>{t.closest(".dialog__wrapper")||(t.removeAttribute("open"),t.showModal(),t.focus(),e(t))}),t.addEventListener("click",t=>{if("IAM-ACTIONBAR"==t.target.tagName)return!1;if(t&&t.target instanceof HTMLElement&&t.target.closest("[data-modal]")){var a=t.target.closest("[data-modal]"),o=a.hasAttribute("data-modal")?a.getAttribute("data-modal"):a.getAttribute("data-filter"),n=document.querySelector("dialog#".concat(o));if(document.querySelector("iam-modal#".concat(o))||document.querySelector("iam-multi-step-modal#".concat(o)))return!1;if(e(n),n.showModal(),n.focus(),!n.querySelector("iam-multi-step")){var r=n.offsetWidth;n.setAttribute("style","max-width: ".concat(r,"px;"))}Array.from(n.querySelectorAll("[data-duplicate]")).forEach(e=>{var t=e.getAttribute("data-duplicate"),a=document.getElementById(t);if(e.checked!=a.checked){e.checked=a.checked;var o=new Event("change");e.dispatchEvent(o)}}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:o})}if(t&&t.target instanceof HTMLElement&&t.target.closest("button.dialog__close")){var i=t.target.closest("dialog[open]");t.preventDefault(),i.close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(e=>{e.classList.remove("active")});var c=new CustomEvent("dialog-closed",{bubbles:!0,cancelable:!0,detail:{modalId:i.id}});t.target.dispatchEvent(c),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:i.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest('button[formmethod="dialog"]')){var d=t.target.closest("dialog[open]");Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(e=>{e.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:d.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest("dialog[open]")){var l=t.target.closest("dialog[open]");if("contents"===window.getComputedStyle(l).display&&(l=l.parentNode.closest("dialog[open]")),!l.classList.contains("dialog--transactional")&&!l.classList.contains("dialog--acknowledgement")){var u=l.getBoundingClientRect();(t.clientX<u.left||t.clientX>u.right||t.clientY<u.top||t.clientY>u.bottom)&&(t.target.closest("dialog *")||l.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:l.getAttribute("id")}))}}if(t&&t.target instanceof HTMLElement&&t.target.closest(".dialog__wrapper > button")){var s=t.target.closest(".dialog__wrapper > button"),m=s.parentNode;if(m.querySelector("dialog")){t.stopPropagation();var y="openPopover",p=m.querySelector(":scope > dialog");if(document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]")!=p&&s.closest("dialog[open]")!=document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(e=>{e.removeAttribute("aria-expanded")}),p.hasAttribute("open"))p.close(),y="closePopover",p.removeAttribute("style"),s.removeAttribute("aria-expanded");else{p.show(),s.setAttribute("aria-expanded",!0);var g=s.getBoundingClientRect(),v=g.top,f=g.left;if(s.closest("iam-table")){var b=s.closest("iam-table").parentNode.getBoundingClientRect();v-=b.top,f-=b.left}p.classList.contains("dialog--fix")&&p.setAttribute("style","position:fixed;top: ".concat(v,"px; left: ").concat(f,"px; margin: 3rem 0 0 0;"))}var w=p.getBoundingClientRect();if(w.bottom-window.scrollY>window.innerHeight-window.scrollY){var h=p.hasAttribute("style")?p.getAttribute("style")+" ":"";p.setAttribute("style",h+"transform: translate(0, calc(-100% - 4rem))"),(w=p.getBoundingClientRect()).top-window.scrollY<100&&p.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:y,id:s.textContent})}}t&&t.target instanceof HTMLElement&&!t.target.closest("dialog[open]")&&!t.target.closest(".dialog__wrapper > button")&&(document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]")&&document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper:not([data-keep-open]) > button")).forEach(e=>{e.removeAttribute("aria-expanded")}))})})(document.body),(e=>{r(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield i()),setTimeout(()=>r(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield i())}),"2000"),e.addEventListener("click",e=>r(void 0,void 0,void 0,function*(){var t=e.target.closest(".youtube-link[data-youtube]");if(t||(t=e.target.closest(".vimeo-link[data-vimeo]")),t&&t.hasAttribute("data-youtube")){e.preventDefault(),document.body.classList.contains("youtubeLoaded")||(yield i());var a="youtube-"+t.getAttribute("data-youtube");document.getElementById("".concat(a,"-dialog"))||document.body.insertAdjacentHTML("beforeend",'<dialog id="'.concat(a,'-dialog"><div class="embed" id="').concat(a,'"></div></dialog>'));var o=document.getElementById("".concat(a,"-dialog")),n=document.getElementById(a),c=new CustomEvent("play-video",{detail:{"Video Type":"YoutTube",ID:t.getAttribute("data-youtube")}});t.dispatchEvent(c),window.dataLayer.push(c.detail),((e,t)=>{r(void 0,void 0,void 0,function*(){typeof window.player>"u"&&(window.player=[]);var a=e.getAttribute("id");if(typeof window.player[a]<"u"&&"function"==typeof window.player[a].pauseVideo)return window.player[a].playVideo(),!1;window.player[a]=new YT.Player(a,{height:"100%",width:"100%",videoId:t,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:function(e){e.target.playVideo()},onStateChange:function(e){e.data!=YT.PlayerState.PLAYING||o||(document.getElementById(a).classList.add("player-ready"),o=!0)}}});var o=!1})})(n,t.getAttribute("data-youtube")),o.showModal(),o.addEventListener("close",()=>{window.player[n.getAttribute("id")]&&"function"==typeof window.player[n.getAttribute("id")].pauseVideo&&window.player[n.getAttribute("id")].pauseVideo();var e=new CustomEvent("close-video",{detail:{"Video Type":"YoutTube",ID:t.getAttribute("data-youtube")}});t.dispatchEvent(e),window.dataLayer.push(e.detail)})}else if(t&&t.hasAttribute("data-vimeo")){e.preventDefault();var d="vimeo-"+t.getAttribute("data-youtube");document.getElementById("".concat(d,"-dialog"))||document.body.insertAdjacentHTML("beforeend",'<dialog id="'.concat(d,'-dialog"><div class="embed" id="').concat(d,'"></div></dialog>'));var l=document.getElementById("".concat(d,"-dialog")),u=document.getElementById(d),s=t.getAttribute("data-vimeo"),m=new CustomEvent("play-video",{detail:{"Video Type":"Vimeo",ID:s}});t.dispatchEvent(m),window.dataLayer.push(m.detail),u.querySelector("iframe")||(u.innerHTML='<iframe src="https://player.vimeo.com/video/'.concat(s,'?autoplay=1" width="100%" height="100%" frameborder="0" allow="autoplay; encrypted-media" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>')),l.showModal(),l.addEventListener("close",()=>{u.innerHTML="";var e=new CustomEvent("close-video",{detail:{"Video Type":"Vimeo",ID:t.getAttribute("data-vimeo")}});t.dispatchEvent(e),window.dataLayer.push(e.detail)})}}))})})(document.body)},new((n=void 0)||(n=Promise))(function(e,t){function r(e){try{d(c.next(e))}catch(e){t(e)}}function i(e){try{d(c.throw(e))}catch(e){t(e)}}function d(t){t.done?e(t.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(t.value).then(r,i)}d((c=c.apply(a,o||[])).next())});var a,o,n,c})});
|
|
@@ -201,8 +201,6 @@ class iamPagination extends HTMLElement {
|
|
|
201
201
|
if (oldVal && oldVal != newVal) {
|
|
202
202
|
this.setup();
|
|
203
203
|
|
|
204
|
-
console.log(newVal);
|
|
205
|
-
|
|
206
204
|
// Dispact the event for other components to use as triggers
|
|
207
205
|
this.dispatchEvent(new CustomEvent('update-page', { detail: { page: newVal } }));
|
|
208
206
|
}
|
|
@@ -107,13 +107,13 @@ function createAppliedFilters(container, filters): void {
|
|
|
107
107
|
checkForChecked(true);
|
|
108
108
|
|
|
109
109
|
// Create the main event listener for the component watching for inputs to change
|
|
110
|
-
container.addEventListener('change', function (event) {
|
|
111
|
-
if (event && event.target instanceof HTMLElement && event.target.closest('input[data-filter-text]')) {
|
|
112
110
|
|
|
111
|
+
Array.from(container.querySelectorAll('input[data-filter-text]')).forEach((input) => {
|
|
112
|
+
|
|
113
|
+
input.addEventListener('change', function (event) {
|
|
114
|
+
|
|
113
115
|
const setFilter = container.closest('dialog') ? false : true;
|
|
114
116
|
|
|
115
|
-
const input = event.target.closest('input[data-filter-text]');
|
|
116
|
-
|
|
117
117
|
if (!container.hasAttribute('data-keep-same') && !container.querySelector('dialog'))
|
|
118
118
|
addFilterButton(filters, input, setFilter);
|
|
119
119
|
|
|
@@ -122,7 +122,7 @@ function createAppliedFilters(container, filters): void {
|
|
|
122
122
|
const event = new CustomEvent('update');
|
|
123
123
|
container.parentElement.closest('iam-applied-filters')?.dispatchEvent(event);
|
|
124
124
|
}
|
|
125
|
-
}
|
|
125
|
+
});
|
|
126
126
|
});
|
|
127
127
|
|
|
128
128
|
|
|
@@ -149,6 +149,9 @@ function createAppliedFilters(container, filters): void {
|
|
|
149
149
|
} else {
|
|
150
150
|
input.checked = false;
|
|
151
151
|
}
|
|
152
|
+
|
|
153
|
+
const changeEvent = new CustomEvent('change');
|
|
154
|
+
input?.dispatchEvent(changeEvent);
|
|
152
155
|
}
|
|
153
156
|
}
|
|
154
157
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { doc } from 'prettier';
|
|
1
2
|
import { zeroPad, isNumeric, ucfirst, resolvePath, uniqueID } from './helpers';
|
|
2
3
|
|
|
3
4
|
// #region Helpers
|
|
@@ -102,6 +103,7 @@ export const paginateTable = (component, table, form, pagination, callback): voi
|
|
|
102
103
|
});
|
|
103
104
|
|
|
104
105
|
pagination.addEventListener('update-page', (event) => {
|
|
106
|
+
console.log('update page')
|
|
105
107
|
if (form.querySelector('[name=page]').value != event.detail.page) {
|
|
106
108
|
form.querySelector('[name=page]').value = event.detail.page;
|
|
107
109
|
|
|
@@ -719,7 +721,7 @@ export const addFilterEventListeners = (component, table, form, pagination, save
|
|
|
719
721
|
}
|
|
720
722
|
*/
|
|
721
723
|
};
|
|
722
|
-
|
|
724
|
+
/*
|
|
723
725
|
if (component.querySelector('iam-actionbar[data-search]')) {
|
|
724
726
|
component.querySelector('iam-actionbar[data-search]').addEventListener('search-submit', (event) => {
|
|
725
727
|
if (form.querySelector('input[data-search]')) {
|
|
@@ -757,7 +759,7 @@ export const addFilterEventListeners = (component, table, form, pagination, save
|
|
|
757
759
|
filterTable(component, table, form, pagination);
|
|
758
760
|
});
|
|
759
761
|
}
|
|
760
|
-
|
|
762
|
+
*/
|
|
761
763
|
form.addEventListener('keyup', (event) => {
|
|
762
764
|
clearTimeout(timer);
|
|
763
765
|
|
|
@@ -1252,6 +1254,16 @@ export const setupAjaxTable = (component, table, form, pagination): void => {
|
|
|
1252
1254
|
const actionbar = component.querySelector('iam-actionbar');
|
|
1253
1255
|
|
|
1254
1256
|
form.addEventListener('submit', (event) => {
|
|
1257
|
+
|
|
1258
|
+
Array.from(form.querySelectorAll('[data-duplicate]')).forEach((element) => {
|
|
1259
|
+
|
|
1260
|
+
const id = element.getAttribute('data-duplicate');
|
|
1261
|
+
|
|
1262
|
+
if (document.querySelector(`[id="${id}"]`)) {
|
|
1263
|
+
document.querySelector(`[id="${id}"]`).checked = element.checked;
|
|
1264
|
+
}
|
|
1265
|
+
});
|
|
1266
|
+
|
|
1255
1267
|
loadAjaxTable(component, table, form, pagination);
|
|
1256
1268
|
|
|
1257
1269
|
event.preventDefault();
|
|
@@ -1263,6 +1275,28 @@ export const setupAjaxTable = (component, table, form, pagination): void => {
|
|
|
1263
1275
|
|
|
1264
1276
|
loadAjaxTable(component, table, form, pagination);
|
|
1265
1277
|
}
|
|
1278
|
+
|
|
1279
|
+
if (event && event.target instanceof HTMLElement && event.target.hasAttribute('id')) {
|
|
1280
|
+
const id = event.target.getAttribute('id');
|
|
1281
|
+
|
|
1282
|
+
if (document.querySelector(`[data-duplicate="${id}"]`)) {
|
|
1283
|
+
document.querySelector(`[data-duplicate="${id}"]`).checked = event.target.checked;
|
|
1284
|
+
|
|
1285
|
+
|
|
1286
|
+
const changeEvent = new CustomEvent('change');
|
|
1287
|
+
document.querySelector(`[data-duplicate="${id}"]`)?.dispatchEvent(changeEvent);
|
|
1288
|
+
|
|
1289
|
+
}
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
if (event && event.target instanceof HTMLElement && event.target.hasAttribute('data-duplicate') && !event.target.closest('iam-modal')) {
|
|
1293
|
+
const id = event.target.getAttribute('data-duplicate');
|
|
1294
|
+
|
|
1295
|
+
if (document.querySelector(`[id="${id}"]`)) {
|
|
1296
|
+
document.querySelector(`[id="${id}"]`).checked = event.target.checked;
|
|
1297
|
+
}
|
|
1298
|
+
}
|
|
1299
|
+
|
|
1266
1300
|
});
|
|
1267
1301
|
|
|
1268
1302
|
if (actionbar) {
|
|
@@ -1290,6 +1324,55 @@ export const setupAjaxTable = (component, table, form, pagination): void => {
|
|
|
1290
1324
|
}
|
|
1291
1325
|
|
|
1292
1326
|
|
|
1327
|
+
// mimic fields
|
|
1328
|
+
const fields = [];
|
|
1329
|
+
|
|
1330
|
+
Array.from(form.querySelectorAll('[data-mimic]')).forEach((input) => {
|
|
1331
|
+
|
|
1332
|
+
input.addEventListener('change', (event) => {
|
|
1333
|
+
|
|
1334
|
+
loadAjaxTable(component, table, form, pagination);
|
|
1335
|
+
});
|
|
1336
|
+
});
|
|
1337
|
+
|
|
1338
|
+
|
|
1339
|
+
Array.from(form.querySelectorAll('[data-mimic]')).forEach((input) => {
|
|
1340
|
+
const mimicField = input.getAttribute('data-mimic');
|
|
1341
|
+
|
|
1342
|
+
Array.from(document.querySelectorAll(`[name="${mimicField}"]`)).forEach((mimicInput) => {
|
|
1343
|
+
|
|
1344
|
+
if (!fields.includes(mimicInput)) {
|
|
1345
|
+
fields.push(mimicInput);
|
|
1346
|
+
}
|
|
1347
|
+
});
|
|
1348
|
+
});
|
|
1349
|
+
|
|
1350
|
+
fields.forEach((input) => {
|
|
1351
|
+
|
|
1352
|
+
input.addEventListener('change', (event) => {
|
|
1353
|
+
|
|
1354
|
+
const name = input.getAttribute('name');
|
|
1355
|
+
const mimicInput = document.querySelector(`[data-mimic="${name}"]`);
|
|
1356
|
+
|
|
1357
|
+
let valueToSend = '';
|
|
1358
|
+
Array.from(document.querySelectorAll(`[name="${name}"]:checked`)).forEach((input) => {
|
|
1359
|
+
|
|
1360
|
+
if(valueToSend == '')
|
|
1361
|
+
valueToSend = input.value;
|
|
1362
|
+
else
|
|
1363
|
+
valueToSend += ',' + input.value;
|
|
1364
|
+
});
|
|
1365
|
+
|
|
1366
|
+
console.log(valueToSend);
|
|
1367
|
+
|
|
1368
|
+
mimicInput.value = valueToSend;
|
|
1369
|
+
const changeEvent = new CustomEvent('change');
|
|
1370
|
+
mimicInput?.dispatchEvent(changeEvent);
|
|
1371
|
+
});
|
|
1372
|
+
});
|
|
1373
|
+
|
|
1374
|
+
|
|
1375
|
+
|
|
1293
1376
|
};
|
|
1294
1377
|
// #region ajax tables functions
|
|
1295
1378
|
|
|
@@ -1460,11 +1543,11 @@ export const loadAjaxTable = async function (component, table, form, pagination)
|
|
|
1460
1543
|
tbody.appendChild(table_row);
|
|
1461
1544
|
});
|
|
1462
1545
|
|
|
1463
|
-
component.setAttribute('data-total', parseInt(totalNumber));
|
|
1464
|
-
component.setAttribute('data-page', parseInt(currentPage));
|
|
1546
|
+
//component.setAttribute('data-total', parseInt(totalNumber));
|
|
1547
|
+
//component.setAttribute('data-page', parseInt(currentPage));
|
|
1465
1548
|
|
|
1466
|
-
pagination.setAttribute('data-total', totalNumber);
|
|
1467
|
-
pagination.setAttribute('data-page', currentPage);
|
|
1549
|
+
//pagination.setAttribute('data-total', totalNumber);
|
|
1550
|
+
//pagination.setAttribute('data-page', currentPage);
|
|
1468
1551
|
|
|
1469
1552
|
Array.from(form.querySelectorAll('[data-ajax-query]')).forEach((queryElement) => {
|
|
1470
1553
|
const totalNumber = resolvePath(response, queryElement.getAttribute('data-ajax-query'), '');
|