@iamproperty/components 7.5.1--beta6 → 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/css/components/actionbar.component.css +1 -1
- package/assets/css/components/actionbar.component.css.map +1 -1
- package/assets/css/components/address-lookup.component.css +1 -1
- package/assets/css/components/address-lookup.component.css.map +1 -1
- package/assets/css/components/applied-filters.css +1 -1
- package/assets/css/components/applied-filters.css.map +1 -1
- package/assets/css/components/calendar.component.css +1 -1
- package/assets/css/components/calendar.component.css.map +1 -1
- package/assets/css/components/card.component.css +1 -1
- package/assets/css/components/card.component.css.map +1 -1
- package/assets/css/components/fileupload.css +1 -1
- package/assets/css/components/fileupload.css.map +1 -1
- package/assets/css/components/input-range.component.css +1 -0
- package/assets/css/components/input-range.component.css.map +1 -0
- package/assets/css/components/input.component.css +1 -0
- package/assets/css/components/input.component.css.map +1 -0
- package/assets/css/components/modal.component.css +1 -0
- package/assets/css/components/modal.component.css.map +1 -0
- package/assets/css/components/multi-step-modal.component.css +1 -0
- package/assets/css/components/multi-step-modal.component.css.map +1 -0
- package/assets/css/components/multi-step-modal.global.css +1 -0
- package/assets/css/components/multi-step-modal.global.css.map +1 -0
- package/assets/css/components/multiselect.css +1 -1
- package/assets/css/components/multiselect.css.map +1 -1
- package/assets/css/components/nav.component.css +1 -1
- package/assets/css/components/nav.component.css.map +1 -1
- package/assets/css/components/pagination.css +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/password.component.css +1 -0
- package/assets/css/components/password.component.css.map +1 -0
- package/assets/css/components/slider.css +1 -1
- package/assets/css/components/slider.css.map +1 -1
- package/assets/css/components/tabs.component.css +1 -1
- package/assets/css/components/tabs.component.css.map +1 -1
- package/assets/css/components/tabs.config.css +1 -1
- package/assets/css/components/tabs.config.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/mobile-core.min.css +1 -1
- package/assets/css/mobile-core.min.css.map +1 -1
- package/assets/css/mobile.min.css +1 -1
- package/assets/css/mobile.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.js +1 -1
- 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/actionbar/actionbar.component.js +2 -4
- package/assets/js/components/actionbar/actionbar.component.min.js +4 -4
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.js +45 -0
- package/assets/js/components/address-lookup/address-lookup.component.min.js +12 -4
- package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.js +0 -2
- package/assets/js/components/applied-filters/applied-filters.component.min.js +5 -7
- 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 +5 -5
- package/assets/js/components/card/card.component.min.js +8 -8
- package/assets/js/components/card/card.component.min.js.map +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 +4 -4
- package/assets/js/components/filter-card/filter-card.component.js +19 -0
- package/assets/js/components/filter-card/filter-card.component.min.js +4 -4
- package/assets/js/components/filter-card/filter-card.component.min.js.map +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.js +128 -0
- package/assets/js/components/input/input.component.min.js +16 -0
- package/assets/js/components/input/input.component.min.js.map +1 -0
- package/assets/js/components/input-range/input-range.component.js +62 -0
- package/assets/js/components/input-range/input-range.component.min.js +14 -0
- package/assets/js/components/input-range/input-range.component.min.js.map +1 -0
- 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.js +141 -0
- package/assets/js/components/modal/modal.component.min.js +28 -0
- package/assets/js/components/modal/modal.component.min.js.map +1 -0
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.js +233 -0
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +17 -0
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -0
- package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
- package/assets/js/components/nav/nav.component.min.js +5 -5
- package/assets/js/components/nav/nav.component.min.js.map +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 +4 -4
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
- package/assets/js/components/password/password.component.js +93 -0
- package/assets/js/components/password/password.component.min.js +17 -0
- package/assets/js/components/password/password.component.min.js.map +1 -0
- 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 +4 -4
- package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
- package/assets/js/components/search/search.component.min.js +1 -1
- package/assets/js/components/slider/slider.component.min.js +3 -3
- package/assets/js/components/split-button/split-button.component.min.js +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.js +2 -0
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +18 -8
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +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 +2 -2
- package/assets/js/components/video-card/video-card.component.min.js +4 -4
- package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/applied-filters.js +80 -62
- package/assets/js/modules/card.module.js +6 -1
- package/assets/js/modules/dialogs.js +6 -2
- package/assets/js/modules/password.js +72 -0
- package/assets/js/modules/table.js +103 -32
- package/assets/js/scripts.bundle.js +2 -3
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/js/scripts.js +0 -2
- package/assets/sass/_components.scss +2 -0
- package/assets/sass/_elements.scss +2 -0
- package/assets/sass/components/actionbar.component.scss +1 -0
- package/assets/sass/components/address-lookup.component.scss +20 -0
- package/assets/sass/components/applied-filters.scss +10 -14
- package/assets/sass/components/input-range.component.scss +38 -0
- package/assets/sass/components/input.component.scss +102 -0
- package/assets/sass/components/modal.component.scss +269 -0
- package/assets/sass/components/multi-step-modal.component.scss +255 -0
- package/assets/sass/components/multi-step-modal.global.scss +92 -0
- package/assets/sass/components/password.component.scss +60 -0
- package/assets/sass/components/tabs.config.scss +2 -2
- package/assets/sass/elements/badge-tag.scss +0 -1
- package/assets/sass/elements/details.scss +12 -7
- package/assets/sass/elements/dialog.scss +46 -5
- package/assets/sass/elements/forms.scss +41 -177
- package/assets/sass/elements/hr.scss +1 -1
- package/assets/sass/elements/modal.scss +19 -21
- package/assets/sass/elements/prefix.scss +115 -0
- package/assets/ts/components/accordion/accordion.component.ts +1 -1
- package/assets/ts/components/actionbar/actionbar.component.ts +3 -10
- package/assets/ts/components/address-lookup/address-lookup.component.ts +60 -0
- package/assets/ts/components/applied-filters/applied-filters.component.ts +0 -2
- package/assets/ts/components/filter-card/filter-card.component.ts +27 -0
- package/assets/ts/components/input/input.component.ts +168 -0
- package/assets/ts/components/input-range/input-range.component.ts +78 -0
- package/assets/ts/components/modal/modal.component.ts +188 -0
- package/assets/ts/components/multi-step-modal/multi-step-modal.component.ts +304 -0
- package/assets/ts/components/pagination/pagination.component.ts +0 -2
- package/assets/ts/components/password/password.component.ts +118 -0
- package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +2 -1
- package/assets/ts/modules/applied-filters.ts +110 -71
- package/assets/ts/modules/card.module.ts +9 -4
- package/assets/ts/modules/dialogs.ts +6 -2
- package/assets/ts/modules/password.ts +82 -0
- package/assets/ts/modules/table.ts +102 -12
- package/assets/ts/scripts.ts +2 -2
- package/dist/components.es.js +641 -959
- package/dist/components.umd.js +275 -182
- package/package.json +2 -2
- package/src/components/Input/Input.vue +19 -363
- package/src/components/InputRange/InputRange.vue +22 -0
- package/src/components/Modal/Modal.vue +22 -0
- package/src/components/MultiStepModal/MultiStepModal.vue +23 -0
- package/src/components/{PasswordIndicator/PasswordIndicator.vue → Password/Password.vue} +23 -23
- package/assets/js/components/password-indicator/password-indicator.component.js +0 -19
- package/assets/js/components/password-indicator/password-indicator.component.min.js +0 -7
- package/assets/js/components/password-indicator/password-indicator.component.min.js.map +0 -1
- package/assets/js/modules/form.js +0 -125
- package/assets/js/modules/inputs.js +0 -151
- package/assets/js/modules/password-indicator.js +0 -21
- package/assets/ts/components/password-indicator/password-indicator.component.ts +0 -24
- package/assets/ts/modules/form.ts +0 -166
- package/assets/ts/modules/inputs.ts +0 -181
- package/assets/ts/modules/password-indicator.ts +0 -29
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import hibpCheck from '../vendor/hibp.js';
|
|
2
|
+
export const changeType = function (element) {
|
|
3
|
+
var _a;
|
|
4
|
+
const buttonEle = element.querySelector('button');
|
|
5
|
+
const associatedInput = (_a = element === null || element === void 0 ? void 0 : element.parentNode) === null || _a === void 0 ? void 0 : _a.querySelector('input');
|
|
6
|
+
element.addEventListener('click', (event) => {
|
|
7
|
+
const currentType = associatedInput.type;
|
|
8
|
+
const newType = currentType === 'password' ? 'text' : 'password';
|
|
9
|
+
const isPasswordType = currentType === 'password';
|
|
10
|
+
associatedInput.setAttribute('type', newType);
|
|
11
|
+
associatedInput.setAttribute('data-password-type', isPasswordType);
|
|
12
|
+
if (element.hasAttribute('data-alt-class')) {
|
|
13
|
+
const newClass = element.getAttribute('data-alt-class');
|
|
14
|
+
element.setAttribute('data-alt-class', buttonEle.getAttribute('class'));
|
|
15
|
+
buttonEle.setAttribute('class', newClass);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
export const checkPWDStrength = (input, check = 'no') => {
|
|
20
|
+
const pwdChecker = document.getElementById(input.getAttribute('data-strength-checker'));
|
|
21
|
+
const password = input.value;
|
|
22
|
+
const minChars = input.hasAttribute('minlength') ? input.getAttribute('minlength') : 12;
|
|
23
|
+
let strength = 1;
|
|
24
|
+
const strengthName = ['Very weak', 'Weak', 'Average', 'Strong', 'Very strong'];
|
|
25
|
+
let extraMsg = '';
|
|
26
|
+
//has number
|
|
27
|
+
if (password.match(/(?=.*[0-9])/))
|
|
28
|
+
strength += 1;
|
|
29
|
+
// has special character
|
|
30
|
+
if (password.match(/(?=.*[!,%,&,#,$,^,*,?,_,~,<,>,])/))
|
|
31
|
+
strength += 1;
|
|
32
|
+
// has lowercase alpha
|
|
33
|
+
if (password.match(/(?=.*[a-z])/))
|
|
34
|
+
strength += 1;
|
|
35
|
+
// has uppercase alpha
|
|
36
|
+
if (password.match(/(?=.*[A-Z])/))
|
|
37
|
+
strength += 1;
|
|
38
|
+
if (password.length < minChars) {
|
|
39
|
+
strength = 1;
|
|
40
|
+
extraMsg = `(must be at least ${minChars} characters.)`;
|
|
41
|
+
}
|
|
42
|
+
// if the strength is above weak and above the minimum length do some kind of api call to check if its in a list of passwords
|
|
43
|
+
if (strength >= 3 && check == 'no') {
|
|
44
|
+
hibpCheck(password, input);
|
|
45
|
+
input.addEventListener('hibpCheck', function (event) {
|
|
46
|
+
checkhibpCheck(event, input);
|
|
47
|
+
});
|
|
48
|
+
function checkhibpCheck(event, input) {
|
|
49
|
+
if (event.detail) {
|
|
50
|
+
// found
|
|
51
|
+
checkPWDStrength(input, 'danger');
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// not found
|
|
55
|
+
checkPWDStrength(input, 'success');
|
|
56
|
+
}
|
|
57
|
+
input.removeEventListener('hibpCheck', checkhibpCheck); // Succeeds
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
else if (strength >= 3 && check == 'danger') {
|
|
61
|
+
strength = 3;
|
|
62
|
+
extraMsg = `(this password is very common)`;
|
|
63
|
+
}
|
|
64
|
+
if (pwdChecker) {
|
|
65
|
+
if (strength <= 3)
|
|
66
|
+
pwdChecker.classList.add('invalid-feedback');
|
|
67
|
+
else
|
|
68
|
+
pwdChecker.classList.remove('invalid-feedback');
|
|
69
|
+
pwdChecker.setAttribute('data-strength', strength);
|
|
70
|
+
pwdChecker.innerHTML = `Password strength: ${strengthName[strength - 1]} ${extraMsg}`;
|
|
71
|
+
}
|
|
72
|
+
};
|
|
@@ -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,9 +1044,35 @@ 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
|
});
|
|
1056
|
+
form.addEventListener('change', (event) => {
|
|
1057
|
+
var _a;
|
|
1058
|
+
if (!event.target.closest('iam-modal')) {
|
|
1059
|
+
loadAjaxTable(component, table, form, pagination);
|
|
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
|
+
}
|
|
1075
|
+
});
|
|
1036
1076
|
if (actionbar) {
|
|
1037
1077
|
actionbar.addEventListener('change', (event) => {
|
|
1038
1078
|
loadAjaxTable(component, table, form, pagination);
|
|
@@ -1049,9 +1089,40 @@ export const setupAjaxTable = (component, table, form, pagination) => {
|
|
|
1049
1089
|
});
|
|
1050
1090
|
component.dispatchEvent(submitEvent);
|
|
1051
1091
|
loadAjaxTable(component, table, form, pagination);
|
|
1052
|
-
console.log('hello');
|
|
1053
1092
|
});
|
|
1054
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
|
+
});
|
|
1055
1126
|
};
|
|
1056
1127
|
// #region ajax tables functions
|
|
1057
1128
|
export const loadAjaxTable = function (component, table, form, pagination) {
|
|
@@ -1120,12 +1191,12 @@ export const loadAjaxTable = function (component, table, form, pagination) {
|
|
|
1120
1191
|
})
|
|
1121
1192
|
.then((response) => response.json())
|
|
1122
1193
|
.then((response) => {
|
|
1123
|
-
const schema =
|
|
1124
|
-
const totalNumberSchema =
|
|
1125
|
-
?
|
|
1194
|
+
const schema = component.hasAttribute('data-schema') ? component.getAttribute('data-schema') : 'data';
|
|
1195
|
+
const totalNumberSchema = component.hasAttribute('data-schema-total')
|
|
1196
|
+
? component.getAttribute('data-schema-total')
|
|
1126
1197
|
: 'meta.total';
|
|
1127
|
-
const currentPageSchema =
|
|
1128
|
-
?
|
|
1198
|
+
const currentPageSchema = component.hasAttribute('data-schema-page')
|
|
1199
|
+
? component.getAttribute('data-schema-page')
|
|
1129
1200
|
: 'meta.current_page';
|
|
1130
1201
|
const totalNumber = resolvePath(response, totalNumberSchema, 15);
|
|
1131
1202
|
const currentPage = resolvePath(response, currentPageSchema, 1);
|
|
@@ -1182,10 +1253,10 @@ export const loadAjaxTable = function (component, table, form, pagination) {
|
|
|
1182
1253
|
});
|
|
1183
1254
|
tbody.appendChild(table_row);
|
|
1184
1255
|
});
|
|
1185
|
-
component.setAttribute('data-total', parseInt(totalNumber));
|
|
1186
|
-
component.setAttribute('data-page', parseInt(currentPage));
|
|
1187
|
-
pagination.setAttribute('data-total', totalNumber);
|
|
1188
|
-
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);
|
|
1189
1260
|
Array.from(form.querySelectorAll('[data-ajax-query]')).forEach((queryElement) => {
|
|
1190
1261
|
const totalNumber = resolvePath(response, queryElement.getAttribute('data-ajax-query'), '');
|
|
1191
1262
|
if (queryElement.hasAttribute('data-total'))
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.5.1--
|
|
2
|
+
* iamKey v7.5.1--beta8
|
|
3
3
|
* Copyright 2022-2025 iamproperty
|
|
4
|
-
*/(function(v){typeof define=="function"&&define.amd?define(v):v()})((function(){"use strict";var v=o=>{o.classList.add("js-enabled"),(navigator.userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0)&&o.classList.add("ie")},H=o=>{var t=function(a){var r=document.querySelector('label[for="'.concat(a.replace("#",""),'"]')),i=document.querySelector(a+" summary"),c=document.querySelector("dialog".concat(a)),n=document.querySelector("detail".concat(a));r instanceof HTMLElement?r.click():i instanceof HTMLElement?i.click():c instanceof HTMLElement?c.showModal():n instanceof HTMLElement&&n.addAttribute("open")};location.hash&&t(location.hash),window.addEventListener("hashchange",function(){t(location.hash)},!1),addEventListener("popstate",e=>{if(e&&e.state&&e.state.type&&e.state.type=="pagination"){var a=document.querySelector("#".concat(e.state.form)),r=document.querySelector("#".concat(e.state.form," [data-pagination]"));r?r.value=e.state.page:a.innerHTML+='<input name="page" type="hidden" data-pagination="true" value="'.concat(e.state.page,'" />'),a.dispatchEvent(new Event("submit"))}}),Array.from(document.querySelectorAll("form")).forEach(e=>{e.addEventListener("submit",a=>{var r;e.querySelector(":invalid")&&(e.classList.add("was-validated"),(r=e?.querySelector("input:invalid"))===null||r===void 0||r.scrollIntoView(),a.preventDefault())})}),document.addEventListener("click",e=>{var a;if(e&&e.target instanceof HTMLElement&&e.target.matches("form button:not([type=button])")){var r=e.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"),(a=r?.querySelector("input:invalid"))===null||a===void 0||a.scrollIntoView(),e.preventDefault()),r.querySelector("iam-multiselect[data-is-required][data-error]")&&(r.classList.add("was-validated"),e.preventDefault())}}),document.addEventListener("keydown",e=>{e.key==="Escape"&&document.querySelector(".dialog--transactional[open], .dialog--acknowledgement[open]")&&(e.preventDefault(),e.stopPropagation())}),Array.from(document.querySelectorAll("label progress")).forEach(e=>{var a=e.closest("label");a.setAttribute("data-percent",e.getAttribute("value"))})},I=o=>(Array.from(o.querySelectorAll("dialog[open]")).forEach(t=>{var e=t.closest(".dialog__wrapper");e||(t.removeAttribute("open"),t.showModal(),t.focus(),L(t))}),o.addEventListener("click",t=>{if(t.target.tagName=="IAM-ACTIONBAR")return!1;if(t&&t.target instanceof HTMLElement&&t.target.closest("[data-modal]")){var e=t.target.closest("[data-modal]"),a=e.hasAttribute("data-modal")?e.getAttribute("data-modal"):e.getAttribute("data-filter"),r=document.querySelector("dialog#".concat(a));if(L(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(g=>{var U=g.getAttribute("data-duplicate"),x=document.getElementById(U);if(g.checked!=x.checked){g.checked=x.checked;var X=new Event("change");g.dispatchEvent(X)}}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:a})}if(t&&t.target instanceof HTMLElement&&t.target.closest("button.dialog__close")){var c=t.target.closest("dialog[open]");t.preventDefault(),c.close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(g=>{g.classList.remove("active")});var n=new CustomEvent("dialog-closed",{bubbles:!0,cancelable:!0,detail:{modalId:c.id}});t.target.dispatchEvent(n),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:c.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest('button[formmethod="dialog"]')){var l=t.target.closest("dialog[open]");Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach(g=>{g.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:l.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest("dialog[open]")){var d=t.target.closest("dialog[open]"),s=window.getComputedStyle(d);if(s.display==="contents"&&(d=d.parentNode.closest("dialog[open]")),!d.classList.contains("dialog--transactional")&&!d.classList.contains("dialog--acknowledgement")){var u=d.getBoundingClientRect();(t.clientX<u.left||t.clientX>u.right||t.clientY<u.top||t.clientY>u.bottom)&&(t.target.closest("dialog *")||d.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:d.getAttribute("id")}))}}if(t&&t.target instanceof HTMLElement&&t.target.closest(".dialog__wrapper > button")){var f=t.target.closest(".dialog__wrapper > button"),S=f.parentNode;if(S.querySelector("dialog")){t.stopPropagation();var q="openPopover",y=S.querySelector(":scope > dialog");if(document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]")!=y&&f.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(g=>{g.removeAttribute("aria-expanded")}),y.hasAttribute("open"))y.close(),q="closePopover",y.removeAttribute("style"),f.removeAttribute("aria-expanded");else{y.show(),f.setAttribute("aria-expanded",!0);var k=f.getBoundingClientRect(),T=k.top,M=k.left;if(f.closest("iam-table")){var C=f.closest("iam-table").parentNode.getBoundingClientRect();T-=C.top,M-=C.left}y.classList.contains("dialog--fix")&&y.setAttribute("style","position:fixed;top: ".concat(T,"px; left: ").concat(M,"px; margin: 3rem 0 0 0;"))}var A=y.getBoundingClientRect(),F=A.bottom-window.scrollY,W=window.innerHeight-window.scrollY;if(F>W){var G=y.hasAttribute("style")?y.getAttribute("style")+" ":"";y.setAttribute("style",G+"transform: translate(0, calc(-100% - 4rem))"),A=y.getBoundingClientRect();var J=A.top-window.scrollY;J<100&&y.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:q,id:f.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(g=>{g.removeAttribute("aria-expanded")}))}),null),L=o=>{if(!o.querySelector(":scope .mh-lg")&&!o.querySelector("iam-multi-step")){o.innerHTML='<div class="mh-lg">'.concat(o.innerHTML,"</div>");var t=o.querySelector(".mh-lg"),e=o.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(e){var a=e.previousSibling;t.before(e),a&&e.before(a)}}o.querySelector(":scope > button:first-child")||o.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')};function D(){window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Pageview",pageTitle:document.title}),document.addEventListener("click",o=>{var t=o.target.closest("[open] summary");if(t)window.dataLayer.push({event:"closeDetails",detailsTitle:t.textContent||""});else{var e=o.target.closest("summary"),a=o.target.closest("a"),r=o.target.closest("button");e&&window.dataLayer.push({event:"openDetails",detailsTitle:e.textContent||""}),a&&window.dataLayer.push({event:"linkClicked",linkText:a.hasAttribute("title")?a.getAttribute("title")||"":a.textContent||"",class:a.hasAttribute("class")&&a.getAttribute("class")||"",href:a.getAttribute("href")||""}),r&&window.dataLayer.push({event:"buttonClicked",buttonText:r.textContent||"",class:r.hasAttribute("class")&&r.getAttribute("class")||""})}})}function B(o){var t=new TextEncoder("utf-8").encode(o);return crypto.subtle.digest("SHA-1",t).then(function(e){for(var a=[],r=new DataView(e),i=0;i<r.byteLength;i+=4){var c=r.getUint32(i),n=c.toString(16),l="00000000",d=(l+n).slice(-l.length);a.push(d)}return a.join("")})}var V=(o,t)=>{B(o).then(function(e){var a=new XMLHttpRequest;a.addEventListener("load",function(){var r=this.responseText.split(`
|
|
5
|
-
`),i=e.slice(5).toUpperCase(),c=!1;for(var n in r)if(r[n].substring(0,35)==i){c=!0;break}var l=new CustomEvent("hibpCheck",{detail:c});t.dispatchEvent(l)}),a.open("GET","https://api.pwnedpasswords.com/range/"+e.substr(0,5)),a.send()})},N=o=>{function t(){if(document.querySelector('input[type="date"]')){let a=function(r){var i=r.getFullYear(),c=String(r.getMonth()+1).padStart(2,"0"),n=String(r.getDate()).padStart(2,"0");return"".concat(i,"-").concat(c,"-").concat(n)};var e=new Date;Array.from(document.querySelectorAll('input[type="date"]')).forEach(r=>{var i=e;if(r.hasAttribute("data-start")&&(i.setDate(i.getDate()+parseInt(r.getAttribute("data-start"))),r.setAttribute("min",a(i))),r.hasAttribute("data-period")){var c=parseInt(r.getAttribute("data-period")),n=new Date;n.setDate(i.getDate()+c),r.setAttribute("max",a(n))}if(r.hasAttribute("data-allowed-days")){var l=JSON.parse("[".concat(r.getAttribute("data-allowed-days"),"]"));r.addEventListener("input",function(){var d=new Date(this.value).getUTCDay();l.includes(d)?r.setCustomValidity(""):r.setCustomValidity("That day of the week is not allowed")})}})}}document.readyState==="complete"&&t(),document.onreadystatechange=()=>{document.readyState==="complete"&&t()},o.addEventListener("input",e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("input,textarea,select")){var a=e.target.closest("input,textarea,select");a.hasAttribute("type")&&a.getAttribute("type")=="color"&&(a.nextElementSibling.value=a.value),a.hasAttribute("data-strength-checker")&&b(a)}}),o.addEventListener("change",e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("select")){var a=e.target.closest("select");if(a.hasAttribute("data-change-type")&&a.hasAttribute("data-input")){var r=document.getElementById(a.getAttribute("data-input")),i=a.value;E(r,i)}}if(e&&e.target instanceof HTMLElement&&e.target.closest('dialog [type="radio"]')){var c=e.target.closest("dialog");Array.from(c.querySelectorAll('[type="radio"][autofocus]')).forEach(n=>{n.removeAttribute("autofocus")}),Array.from(c.querySelectorAll('[type="radio"]:checked')).forEach(n=>{n.setAttribute("autofocus",!0)})}}),o.addEventListener("click",e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("[data-change-type][data-input]:not(select)")){var a=e.target.closest("[data-change-type]"),r=document.getElementById(a.getAttribute("data-input")),i=a.getAttribute("data-change-type");if(a.setAttribute("data-change-type",r.getAttribute("type")),E(r,i),a.hasAttribute("data-alt-class")){var c=a.getAttribute("data-alt-class");a.setAttribute("data-alt-class",a.getAttribute("class")),a.setAttribute("class",c)}}})},E=(o,t)=>{o.hasAttribute("type")&&o.getAttribute("type")=="password"&&o.setAttribute("data-password-type",!0),o.setAttribute("type",t)},b=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"no",a=document.getElementById(t.getAttribute("data-strength-checker")),r=t.value,i=t.hasAttribute("minlength")?t.getAttribute("minlength"):12,c=1,n=["Very weak","Weak","Average","Strong","Very strong"],l="";if(r.match(/(?=.*[0-9])/)&&(c+=1),r.match(/(?=.*[!,%,&,#,$,^,*,?,_,~,<,>,])/)&&(c+=1),r.match(/(?=.*[a-z])/)&&(c+=1),r.match(/(?=.*[A-Z])/)&&(c+=1),r.length<i&&(c=1,l="(must be at least ".concat(i," characters.)")),c>=3&&e=="no"){let d=function(s,u){s.detail?b(u,"danger"):b(u,"success"),u.removeEventListener("hibpCheck",d)};V(r,t),t.addEventListener("hibpCheck",function(s){d(s,t)})}else c>=3&&e=="danger"&&(c=3,l="(this password is very common)");a&&(c<=3?a.classList.add("invalid-feedback"):a.classList.remove("invalid-feedback"),a.setAttribute("data-strength",c),a.innerHTML="Password strength: ".concat(n[c-1]," ").concat(l))};window.triggerDynamicEvent=function(o){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"change";console.log("event"),o.hasAttribute("data-change-events")&&t=="change"&&p(o,o.getAttribute("data-change-events")),o.hasAttribute("data-click-events")&&t=="click"&&p(o,o.getAttribute("data-click-events"))};var Y=()=>{document.addEventListener("change",o=>{o&&o.target instanceof HTMLElement&&o.target.closest("[data-change-events]")&&p(o.target,o.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("keyup",o=>{o&&o.target instanceof HTMLElement&&o.target.closest("[data-change-events]")&&p(o.target,o.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("click",o=>{o&&o.target instanceof HTMLElement&&o.target.closest("[data-click-events]")&&p(o.target,o.target.closest("[data-click-events]").getAttribute("data-click-events"))})},p=(o,t)=>{if(t||(t=o.parentNode.getAttribute("data-change-events")),!t)return!1;Array.from(JSON.parse(t)).forEach(e=>{_(o,e)})},_=(o,t)=>{if("matches"in t)return t.matches=="any"||o.value==t.matches?m(o,t,"if"):m(o,t,"else"),!1;if("in-list"in t){var e=document.querySelector("".concat(t["in-list"],' option[value="').concat(o.value,'"]'));return document.querySelector("".concat(t["in-list"],' option[value="').concat(o.value,'"]'))?m(e,t,"if"):m(e,t,"else"),!1}else"event"in t&&m(o,t,"event")},m=(o,t,e)=>{if(!(e in t))return!1;switch(t[e]){case"hide":if(document.querySelector(t.target)){var a=document.querySelector(t.target);a.classList.add("js-hide"),Array.from(a.querySelectorAll("[data-required]")).forEach(n=>{n.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(n=>{n.closest(".js-hide")||n.setAttribute("required","true")})}break;case"populate-form":P(o,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(n){n.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(n){n.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);break}},P=function(t,e){var a=JSON.parse(t.getAttribute("data-values")),r=document.querySelector(e.target);if(!a)return!1;Object.keys(a).forEach(i=>{document.getElementById(i)&&document.getElementById(i).tagName=="SPAN"&&(document.getElementById(i).innerHTML=a[i]),r.querySelector('select[name="'.concat(i,'"] [value="').concat(a[i],'"]'))?(r.querySelector('select[name="'.concat(i,'"]')).value=a[i],t.hasAttribute("data-lock-fields")&&(r.querySelector('select[name="'.concat(i,'"]')).disabled=!0)):r.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(a[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(a[i],'"]')).checked=!0,r.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(a[i],'"]')).disabled=!1):r.querySelector('input[name="'.concat(i,'"]'))&&(r.querySelector('input[name="'.concat(i,'"]')).value=a[i],t.hasAttribute("data-lock-fields")&&r.querySelector('input[name="'.concat(i,'"]')).setAttribute("readonly","true"))})},h=function(o,t,e,a){function r(i){return i instanceof e?i:new e(function(c){c(i)})}return new(e||(e=Promise))(function(i,c){function n(s){try{d(a.next(s))}catch(u){c(u)}}function l(s){try{d(a.throw(s))}catch(u){c(u)}}function d(s){s.done?i(s.value):r(s.value).then(n,l)}d((a=a.apply(o,t||[])).next())})},j=o=>h(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield w()),setTimeout(()=>h(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield w())}),"2000"),o.addEventListener("click",t=>h(void 0,void 0,void 0,function*(){var e=t.target.closest(".youtube-link[data-youtube]");if(e||(e=t.target.closest(".vimeo-link[data-vimeo]")),e&&e.hasAttribute("data-youtube")){t.preventDefault(),document.body.classList.contains("youtubeLoaded")||(yield w());var a="youtube-"+e.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 r=document.getElementById("".concat(a,"-dialog")),i=document.getElementById(a),c=new CustomEvent("play-video",{detail:{"Video Type":"YoutTube",ID:e.getAttribute("data-youtube")}});e.dispatchEvent(c),window.dataLayer.push(c.detail),R(i,e.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 f=new CustomEvent("close-video",{detail:{"Video Type":"YoutTube",ID:e.getAttribute("data-youtube")}});e.dispatchEvent(f),window.dataLayer.push(f.detail)})}else if(e&&e.hasAttribute("data-vimeo")){t.preventDefault();var n="vimeo-"+e.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 l=document.getElementById("".concat(n,"-dialog")),d=document.getElementById(n),s=e.getAttribute("data-vimeo"),u=new CustomEvent("play-video",{detail:{"Video Type":"Vimeo",ID:s}});e.dispatchEvent(u),window.dataLayer.push(u.detail),d.querySelector("iframe")||(d.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",()=>{d.innerHTML="";var f=new CustomEvent("close-video",{detail:{"Video Type":"Vimeo",ID:e.getAttribute("data-vimeo")}});e.dispatchEvent(f),window.dataLayer.push(f.detail)})}}))}),w=()=>h(void 0,void 0,void 0,function*(){return new Promise((o,t)=>{var e=new Image;e.onload=function(){var a=document.createElement("script");a.src="https://www.youtube.com/iframe_api";var r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(a,r),document.body.classList.add("youtubeLoaded"),o(!0)},e.onerror=function(){t(!1)},e.src="https://youtube.com/favicon.ico"})}),R=(o,t)=>h(void 0,void 0,void 0,function*(){typeof window.player>"u"&&(window.player=[]);var e=o.getAttribute("id");if(typeof window.player[e]<"u"&&typeof window.player[e].pauseVideo=="function")return window.player[e].playVideo(),!1;window.player[e]=new YT.Player(e,{height:"100%",width:"100%",videoId:t,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:a,onStateChange:i}});function a(c){c.target.playVideo()}var r=!1;function i(c){if(c.data==YT.PlayerState.PLAYING&&!r){var n=document.getElementById(e);n.classList.add("player-ready"),r=!0}}}),O=function(o,t,e,a){function r(i){return i instanceof e?i:new e(function(c){c(i)})}return new(e||(e=Promise))(function(i,c){function n(s){try{d(a.next(s))}catch(u){c(u)}}function l(s){try{d(a.throw(s))}catch(u){c(u)}}function d(s){s.done?i(s.value):r(s.value).then(n,l)}d((a=a.apply(o,t||[])).next())})};document.addEventListener("DOMContentLoaded",()=>O(void 0,void 0,void 0,function*(){D(),Y(),v(document.body),H(),I(document.body),N(document.body),j(document.body)}))}));
|
|
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)}))}));
|
|
6
5
|
//# sourceMappingURL=scripts.bundle.js.map
|