@iamproperty/components 7.2.2--beta3 → 7.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/assets/css/components/actionbar.component.css +1 -1
  2. package/assets/css/components/actionbar.component.css.map +1 -1
  3. package/assets/css/components/barchart.component.css.map +1 -1
  4. package/assets/css/components/bento-grid.global.css.map +1 -1
  5. package/assets/css/components/card.component.css +1 -1
  6. package/assets/css/components/card.component.css.map +1 -1
  7. package/assets/css/components/charts.module.css.map +1 -1
  8. package/assets/css/components/doughnutchart.component.css.map +1 -1
  9. package/assets/css/components/menu.component.css +1 -1
  10. package/assets/css/components/menu.component.css.map +1 -1
  11. package/assets/css/components/menu.css +1 -1
  12. package/assets/css/components/menu.css.map +1 -1
  13. package/assets/css/components/rank.component.css.map +1 -1
  14. package/assets/css/components/rankings.component.css.map +1 -1
  15. package/assets/css/components/rankings.global.css.map +1 -1
  16. package/assets/css/components/table-basic.global.css.map +1 -1
  17. package/assets/css/components/table.global.css.map +1 -1
  18. package/assets/css/core.min.css +1 -1
  19. package/assets/css/core.min.css.map +1 -1
  20. package/assets/css/mobile-core.min.css +1 -1
  21. package/assets/css/mobile-core.min.css.map +1 -1
  22. package/assets/css/mobile.min.css +1 -1
  23. package/assets/css/mobile.min.css.map +1 -1
  24. package/assets/css/style.min.css +1 -1
  25. package/assets/css/style.min.css.map +1 -1
  26. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  27. package/assets/js/components/actionbar/actionbar.component.min.js +2 -2
  28. package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
  29. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  30. package/assets/js/components/barchart/barchart.component.min.js +1 -1
  31. package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
  32. package/assets/js/components/card/card.component.min.js +2 -2
  33. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  34. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  35. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +1 -1
  36. package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
  37. package/assets/js/components/filter-card/filter-card.component.min.js +1 -1
  38. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  39. package/assets/js/components/header/header.component.min.js +1 -1
  40. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  41. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  42. package/assets/js/components/menu/menu.component.js +138 -159
  43. package/assets/js/components/menu/menu.component.min.js +4 -69
  44. package/assets/js/components/menu/menu.component.min.js.map +1 -1
  45. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  46. package/assets/js/components/multiselect/multiselect.component.min.js +1 -1
  47. package/assets/js/components/nav/nav.component.min.js +1 -1
  48. package/assets/js/components/notification/notification.component.min.js +1 -1
  49. package/assets/js/components/pagination/pagination.component.min.js +1 -1
  50. package/assets/js/components/rank/rank.component.min.js +1 -1
  51. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  52. package/assets/js/components/record-card/record-card.component.min.js +1 -1
  53. package/assets/js/components/search/search.component.min.js +1 -1
  54. package/assets/js/components/slider/slider.component.min.js +1 -1
  55. package/assets/js/components/table/table.component.min.js +1 -1
  56. package/assets/js/components/table-ajax/table-ajax.component.min.js +1 -1
  57. package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
  58. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
  59. package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
  60. package/assets/js/components/tabs/tabs.component.min.js +1 -1
  61. package/assets/js/components/video-card/video-card.component.min.js +1 -1
  62. package/assets/js/scripts.bundle.js +1 -1
  63. package/assets/js/scripts.bundle.min.js +1 -1
  64. package/assets/sass/_functions/variables.scss +0 -3
  65. package/assets/sass/components/actionbar.component.scss +2 -3
  66. package/assets/sass/components/bento-grid.global.scss +0 -1
  67. package/assets/sass/components/charts.module.scss +0 -2
  68. package/assets/sass/components/menu.component.scss +123 -31
  69. package/assets/sass/components/menu.scss +68 -7
  70. package/assets/sass/components/rank.component.scss +14 -23
  71. package/assets/sass/components/rankings.component.scss +1 -7
  72. package/assets/sass/components/rankings.global.scss +6 -12
  73. package/assets/sass/components/table-basic.global.scss +2 -4
  74. package/assets/sass/components/table.global.scss +4 -4
  75. package/assets/sass/elements/buttons--global.scss +1 -1
  76. package/assets/sass/elements/dialog.scss +1 -3
  77. package/assets/sass/elements/forms.scss +18 -14
  78. package/assets/sass/foundations/reboot.scss +3 -3
  79. package/assets/ts/components/menu/menu.component.ts +152 -171
  80. package/assets/ts/components/rank/rank.component.ts +1 -6
  81. package/assets/ts/components/rankings/rankings.component.ts +1 -7
  82. package/dist/components.es.js +19 -19
  83. package/dist/components.umd.js +56 -121
  84. package/package.json +1 -1
  85. package/src/components/Rank/Rank.vue +1 -2
  86. package/src/components/Rankings/Rankings.vue +9 -10
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.2.2--beta3
2
+ * iamKey v7.3.0
3
3
  * Copyright 2022-2025 iamproperty
4
4
  */(function(h){typeof define=="function"&&define.amd?define(h):h()})(function(){"use strict";var h=r=>{r.classList.add("js-enabled"),(navigator.userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0)&&r.classList.add("ie")},C=r=>{var e=function(t){var o=document.querySelector('label[for="'.concat(t.replace("#",""),'"]')),i=document.querySelector(t+" summary"),c=document.querySelector("dialog".concat(t)),n=document.querySelector("detail".concat(t));o instanceof HTMLElement?o.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",a=>{if(a&&a.state&&a.state.type&&a.state.type=="pagination"){var t=document.querySelector("#".concat(a.state.form)),o=document.querySelector("#".concat(a.state.form," [data-pagination]"));o?o.value=a.state.page:t.innerHTML+='<input name="page" type="hidden" data-pagination="true" value="'.concat(a.state.page,'" />'),t.dispatchEvent(new Event("submit"))}}),document.addEventListener("submit",a=>{if(a&&a.target instanceof HTMLElement&&a.target.matches("form")){var t=a.target;Array.from(t.querySelectorAll("[data-password-type]")).forEach(o=>{o.setAttribute("type","password")}),(t.querySelector(":invalid")||t.querySelector('.pwd-checker[data-strength="1"]')||t.querySelector('.pwd-checker[data-strength="2"]'))&&(t.classList.add("was-validated"),a.preventDefault()),t.querySelector("iam-multiselect[data-is-required][data-error]")&&(t.classList.add("was-validated"),a.preventDefault())}}),document.addEventListener("keydown",a=>{a.key==="Escape"&&document.querySelector(".dialog--transactional[open], .dialog--acknowledgement[open]")&&(a.preventDefault(),a.stopPropagation())}),Array.from(document.querySelectorAll("label progress")).forEach(a=>{var t=a.closest("label");t.setAttribute("data-percent",a.getAttribute("value"))})},H=r=>(Array.from(r.querySelectorAll("dialog[open]")).forEach(e=>{var a=e.closest(".dialog__wrapper");a||(e.removeAttribute("open"),e.showModal(),e.focus(),E(e))}),r.addEventListener("click",e=>{if(e.target.tagName=="IAM-ACTIONBAR")return!1;if(e&&e.target instanceof HTMLElement&&e.target.closest("[data-modal]")){var a=e.target.closest("[data-modal]"),t=a.hasAttribute("data-modal")?a.getAttribute("data-modal"):a.getAttribute("data-filter"),o=document.querySelector("dialog#".concat(t));if(E(o),o.showModal(),o.focus(),!o.querySelector("iam-multi-step")){var i=o.offsetWidth;o.setAttribute("style","max-width: ".concat(i,"px;"))}Array.from(o.querySelectorAll("[data-duplicate]")).forEach(g=>{var X=g.getAttribute("data-duplicate"),M=document.getElementById(X);if(g.checked!=M.checked){g.checked=M.checked;var z=new Event("change");g.dispatchEvent(z)}}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:t})}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(g=>{g.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 l=e.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(e&&e.target instanceof HTMLElement&&e.target.closest("dialog[open]")){var s=e.target.closest("dialog[open]"),d=window.getComputedStyle(s);if(d.display==="contents"&&(s=s.parentNode.closest("dialog[open]")),!s.classList.contains("dialog--transactional")&&!s.classList.contains("dialog--acknowledgement")){var u=s.getBoundingClientRect();(e.clientX<u.left||e.clientX>u.right||e.clientY<u.top||e.clientY>u.bottom)&&(e.target.closest("dialog *")||s.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:s.getAttribute("id")}))}}if(e&&e.target instanceof HTMLElement&&e.target.closest(".dialog__wrapper > button")){e.stopPropagation();var f=e.target.closest(".dialog__wrapper > button"),F=f.parentNode,S="openPopover",y=F.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(),S="closePopover",y.removeAttribute("style"),f.removeAttribute("aria-expanded");else{y.show(),f.setAttribute("aria-expanded",!0);var q=f.getBoundingClientRect(),k=q.top,T=q.left;if(f.closest("iam-table")){var x=f.closest("iam-table").parentNode.getBoundingClientRect();k-=x.top,T-=x.left}y.classList.contains("dialog--fix")&&y.setAttribute("style","position:fixed;top: ".concat(k,"px; left: ").concat(T,"px; margin: 3rem 0 0 0;"))}var A=y.getBoundingClientRect(),W=A.bottom-window.scrollY,G=window.innerHeight-window.scrollY;if(W>G){var J=y.hasAttribute("style")?y.getAttribute("style")+" ":"";y.setAttribute("style",J+"transform: translate(0, calc(-100% - 4rem))"),A=y.getBoundingClientRect();var U=A.top-window.scrollY;U<100&&y.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:S,id:f.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(g=>{g.removeAttribute("aria-expanded")}))}),null),E=r=>{if(!r.querySelector(":scope .mh-lg")&&!r.querySelector("iam-multi-step")){r.innerHTML='<div class="mh-lg">'.concat(r.innerHTML,"</div>");var e=r.querySelector(".mh-lg"),a=r.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(a){var t=a.previousSibling;e.before(a),t&&a.before(t)}}r.querySelector(":scope > button:first-child")||r.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')};function I(){window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Pageview",pageTitle:document.title}),document.addEventListener("click",r=>{var e=r.target.closest("[open] summary");if(e)window.dataLayer.push({event:"closeDetails",detailsTitle:e.textContent||""});else{var a=r.target.closest("summary"),t=r.target.closest("a"),o=r.target.closest("button");a&&window.dataLayer.push({event:"openDetails",detailsTitle:a.textContent||""}),t&&window.dataLayer.push({event:"linkClicked",linkText:t.hasAttribute("title")?t.getAttribute("title")||"":t.textContent||"",class:t.hasAttribute("class")&&t.getAttribute("class")||"",href:t.getAttribute("href")||""}),o&&window.dataLayer.push({event:"buttonClicked",buttonText:o.textContent||"",class:o.hasAttribute("class")&&o.getAttribute("class")||""})}})}function D(r){var e=new TextEncoder("utf-8").encode(r);return crypto.subtle.digest("SHA-1",e).then(function(a){for(var t=[],o=new DataView(a),i=0;i<o.byteLength;i+=4){var c=o.getUint32(i),n=c.toString(16),l="00000000",s=(l+n).slice(-l.length);t.push(s)}return t.join("")})}var B=(r,e)=>{D(r).then(function(a){var t=new XMLHttpRequest;t.addEventListener("load",function(){var o=this.responseText.split(`
5
5
  `),i=a.slice(5).toUpperCase(),c=!1;for(var n in o)if(o[n].substring(0,35)==i){c=!0;break}var l=new CustomEvent("hibpCheck",{detail:c});e.dispatchEvent(l)}),t.open("GET","https://api.pwnedpasswords.com/range/"+a.substr(0,5)),t.send()})},V=r=>{function e(){if(Array.from(document.querySelectorAll("input[maxlength],textarea[maxlength]")).forEach(t=>{t.parentElement,N(t)}),Array.from(document.querySelectorAll("label input")).forEach(t=>{!t.closest("label").querySelector(".optional-text")&&!t.hasAttribute("required")&&(t.parentNode.tagName.toLowerCase()=="span"?t.parentElement.insertAdjacentHTML("beforebegin",'<span class="optional-text"></span>'):t.insertAdjacentHTML("beforebegin",'<span class="optional-text"></span>'))}),document.querySelector('input[type="date"]')){let t=function(o){var i=o.getFullYear(),c=String(o.getMonth()+1).padStart(2,"0"),n=String(o.getDate()).padStart(2,"0");return"".concat(i,"-").concat(c,"-").concat(n)};var a=new Date;Array.from(document.querySelectorAll('input[type="date"]')).forEach(o=>{var i=a;if(o.hasAttribute("data-start")&&(i.setDate(i.getDate()+parseInt(o.getAttribute("data-start"))),o.setAttribute("min",t(i))),o.hasAttribute("data-period")){var c=parseInt(o.getAttribute("data-period")),n=new Date;n.setDate(i.getDate()+c),o.setAttribute("max",t(n))}if(o.hasAttribute("data-allowed-days")){var l=JSON.parse("[".concat(o.getAttribute("data-allowed-days"),"]"));o.addEventListener("input",function(){var s=new Date(this.value).getUTCDay();l.includes(s)?o.setCustomValidity(""):o.setCustomValidity("That day of the week is not allowed")})}})}}document.readyState==="complete"&&e(),document.onreadystatechange=()=>{document.readyState==="complete"&&e()},r.addEventListener("input",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("input,textarea,select")){var t=a.target.closest("input,textarea,select");t.hasAttribute("type")&&t.getAttribute("type")=="color"&&(t.nextElementSibling.value=t.value),t.hasAttribute("maxlength")&&t.nextElementSibling&&t.nextElementSibling.setAttribute("data-count",t.value.length),t.hasAttribute("data-strength-checker")&&b(t)}}),r.addEventListener("change",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("select")){var t=a.target.closest("select");if(t.hasAttribute("data-change-type")&&t.hasAttribute("data-input")){var o=document.getElementById(t.getAttribute("data-input")),i=t.value;L(o,i)}}if(a&&a.target instanceof HTMLElement&&a.target.closest('dialog [type="radio"]')){var c=a.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)})}}),r.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("[data-change-type][data-input]:not(select)")){var t=a.target.closest("[data-change-type]"),o=document.getElementById(t.getAttribute("data-input")),i=t.getAttribute("data-change-type");if(t.setAttribute("data-change-type",o.getAttribute("type")),L(o,i),t.hasAttribute("data-alt-class")){var c=t.getAttribute("data-alt-class");t.setAttribute("data-alt-class",t.getAttribute("class")),t.setAttribute("class",c)}}})},N=r=>{var e=r.parentElement,a=r.getAttribute("maxlength");e.style.setProperty("--maxlength",a);var t=r.nextElementSibling;(!t||t&&t.classList.contains("invalid-feedback"))&&(t=document.createElement("span"),e.insertBefore(t,r.nextSibling)),t.setAttribute("data-count",r.value.length)},L=(r,e)=>{r.hasAttribute("type")&&r.getAttribute("type")=="password"&&r.setAttribute("data-password-type",!0),r.setAttribute("type",e)},b=function(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"no",t=document.getElementById(e.getAttribute("data-strength-checker")),o=e.value,i=e.hasAttribute("minlength")?e.getAttribute("minlength"):12,c=1,n=["Very weak","Weak","Average","Strong","Very strong"],l="";if(o.match(/(?=.*[0-9])/)&&(c+=1),o.match(/(?=.*[!,%,&,#,$,^,*,?,_,~,<,>,])/)&&(c+=1),o.match(/(?=.*[a-z])/)&&(c+=1),o.match(/(?=.*[A-Z])/)&&(c+=1),o.length<i&&(c=1,l="(must be at least ".concat(i," characters.)")),c>=3&&a=="no"){let s=function(d,u){d.detail?b(u,"danger"):b(u,"success"),u.removeEventListener("hibpCheck",s)};B(o,e),e.addEventListener("hibpCheck",function(d){s(d,e)})}else c>=3&&a=="danger"&&(c=3,l="(this password is very common)");t&&(c<=3?t.classList.add("invalid-feedback"):t.classList.remove("invalid-feedback"),t.setAttribute("data-strength",c),t.innerHTML="Password strength: ".concat(n[c-1]," ").concat(l))},Y=()=>{document.addEventListener("change",r=>{r&&r.target instanceof HTMLElement&&r.target.closest("[data-change-events]")&&v(r.target,r.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("keyup",r=>{r&&r.target instanceof HTMLElement&&r.target.closest("[data-change-events]")&&v(r.target,r.target.closest("[data-change-events]").getAttribute("data-change-events"))}),document.addEventListener("click",r=>{r&&r.target instanceof HTMLElement&&r.target.closest("[data-click-events]")&&v(r.target,r.target.closest("[data-click-events]").getAttribute("data-click-events"))})},v=(r,e)=>{if(e||(e=r.parentNode.getAttribute("data-change-events")),!e)return!1;Array.from(JSON.parse(e)).forEach(a=>{P(r,a)})},P=(r,e)=>{if("matches"in e)return e.matches=="any"||r.value==e.matches?m(r,e,"if"):m(r,e,"else"),!1;if("in-list"in e){var a=document.querySelector("".concat(e["in-list"],' option[value="').concat(r.value,'"]'));return document.querySelector("".concat(e["in-list"],' option[value="').concat(r.value,'"]'))?m(a,e,"if"):m(a,e,"else"),!1}else"event"in e&&m(r,e,"event")},m=(r,e,a)=>{if(!(a in e))return!1;switch(e[a]){case"hide":if(document.querySelector(e.target)){var t=document.querySelector(e.target);t.classList.add("js-hide"),Array.from(t.querySelectorAll("[data-required]")).forEach(n=>{n.removeAttribute("required")})}break;case"show":if(document.querySelector(e.target)){var o=document.querySelector(e.target);o.classList.remove("js-hide"),Array.from(o.querySelectorAll("[data-required]")).forEach(n=>{n.closest(".js-hide")||n.setAttribute("required","true")})}break;case"populate-form":j(r,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}},j=function(e,a){var t=JSON.parse(e.getAttribute("data-values")),o=document.querySelector(a.target);if(!t)return!1;Object.keys(t).forEach(i=>{document.getElementById(i)&&document.getElementById(i).tagName=="SPAN"&&(document.getElementById(i).innerHTML=t[i]),o.querySelector('select[name="'.concat(i,'"] [value="').concat(t[i],'"]'))?(o.querySelector('select[name="'.concat(i,'"]')).value=t[i],e.hasAttribute("data-lock-fields")&&(o.querySelector('select[name="'.concat(i,'"]')).disabled=!0)):o.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(t[i],'"]'))?(Array.from(o.querySelectorAll('input[name="'.concat(i,'"][type="radio"]'))).forEach(function(c){c.disabled=!0}),o.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(t[i],'"]')).checked=!0,o.querySelector('input[name="'.concat(i,'"][type="radio"][value="').concat(t[i],'"]')).disabled=!1):o.querySelector('input[name="'.concat(i,'"]'))&&(o.querySelector('input[name="'.concat(i,'"]')).value=t[i],e.hasAttribute("data-lock-fields")&&o.querySelector('input[name="'.concat(i,'"]')).setAttribute("readonly","true"))})},p=function(r,e,a,t){function o(i){return i instanceof a?i:new a(function(c){c(i)})}return new(a||(a=Promise))(function(i,c){function n(d){try{s(t.next(d))}catch(u){c(u)}}function l(d){try{s(t.throw(d))}catch(u){c(u)}}function s(d){d.done?i(d.value):o(d.value).then(n,l)}s((t=t.apply(r,e||[])).next())})},_=r=>p(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield w()),setTimeout(()=>p(void 0,void 0,void 0,function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield w())}),"2000"),r.addEventListener("click",e=>p(void 0,void 0,void 0,function*(){var a=e.target.closest(".youtube-link[data-youtube]");if(a||(a=e.target.closest(".vimeo-link[data-vimeo]")),a&&a.hasAttribute("data-youtube")){e.preventDefault(),document.body.classList.contains("youtubeLoaded")||(yield w());var t="youtube-"+a.getAttribute("data-youtube");document.getElementById("".concat(t,"-dialog"))||document.body.insertAdjacentHTML("beforeend",'<dialog id="'.concat(t,'-dialog"><div class="embed" id="').concat(t,'"></div></dialog>'));var o=document.getElementById("".concat(t,"-dialog")),i=document.getElementById(t),c=new CustomEvent("play-video",{detail:{"Video Type":"YoutTube",ID:a.getAttribute("data-youtube")}});a.dispatchEvent(c),window.dataLayer.push(c.detail),R(i,a.getAttribute("data-youtube")),o.showModal(),o.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:a.getAttribute("data-youtube")}});a.dispatchEvent(f),window.dataLayer.push(f.detail)})}else if(a&&a.hasAttribute("data-vimeo")){e.preventDefault();var n="vimeo-"+a.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")),s=document.getElementById(n),d=a.getAttribute("data-vimeo"),u=new CustomEvent("play-video",{detail:{"Video Type":"Vimeo",ID:d}});a.dispatchEvent(u),window.dataLayer.push(u.detail),s.querySelector("iframe")||(s.innerHTML='<iframe src="https://player.vimeo.com/video/'.concat(d,'?autoplay=1" width="100%" height="100%" frameborder="0" allow="autoplay; encrypted-media" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>')),l.showModal(),l.addEventListener("close",()=>{s.innerHTML="";var f=new CustomEvent("close-video",{detail:{"Video Type":"Vimeo",ID:a.getAttribute("data-vimeo")}});a.dispatchEvent(f),window.dataLayer.push(f.detail)})}}))}),w=()=>p(void 0,void 0,void 0,function*(){return new Promise((r,e)=>{var a=new Image;a.onload=function(){var t=document.createElement("script");t.src="https://www.youtube.com/iframe_api";var o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(t,o),document.body.classList.add("youtubeLoaded"),r(!0)},a.onerror=function(){e(!1)},a.src="https://youtube.com/favicon.ico"})}),R=(r,e)=>p(void 0,void 0,void 0,function*(){typeof window.player>"u"&&(window.player=[]);var a=r.getAttribute("id");if(typeof window.player[a]<"u"&&typeof window.player[a].pauseVideo=="function")return window.player[a].playVideo(),!1;window.player[a]=new YT.Player(a,{height:"100%",width:"100%",videoId:e,playerVars:{modestbranding:1,playsinline:1,rel:0,showinfo:0},events:{onReady:t,onStateChange:i}});function t(c){c.target.playVideo()}var o=!1;function i(c){if(c.data==YT.PlayerState.PLAYING&&!o){var n=document.getElementById(a);n.classList.add("player-ready"),o=!0}}}),O=function(r,e,a,t){function o(i){return i instanceof a?i:new a(function(c){c(i)})}return new(a||(a=Promise))(function(i,c){function n(d){try{s(t.next(d))}catch(u){c(u)}}function l(d){try{s(t.throw(d))}catch(u){c(u)}}function s(d){d.done?i(d.value):o(d.value).then(n,l)}s((t=t.apply(r,e||[])).next())})};document.addEventListener("DOMContentLoaded",()=>O(void 0,void 0,void 0,function*(){I(),Y(),h(document.body),C(),H(document.body),V(document.body),_(document.body)}))});
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.2.2--beta3
2
+ * iamKey v7.3.0
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.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.querySelector(":scope > button:first-child")||e.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')},t=(e,t)=>{(function(e){var t=new TextEncoder("utf-8").encode(e);return crypto.subtle.digest("SHA-1",t).then((function(e){for(var t=[],a=new DataView(e),o=0;o<a.byteLength;o+=4){var n=("00000000"+a.getUint32(o).toString(16)).slice(-8);t.push(n)}return t.join("")}))})(e).then((function(e){var a=new XMLHttpRequest;a.addEventListener("load",(function(){var a=this.responseText.split("\n"),o=e.slice(5).toUpperCase(),n=!1;for(var r in a)if(a[r].substring(0,35)==o){n=!0;break}var i=new CustomEvent("hibpCheck",{detail:n});t.dispatchEvent(i)})),a.open("GET","https://api.pwnedpasswords.com/range/"+e.substr(0,5)),a.send()}))},a=e=>{function t(){if(Array.from(document.querySelectorAll("input[maxlength],textarea[maxlength]")).forEach((e=>{e.parentElement,o(e)})),Array.from(document.querySelectorAll("label input")).forEach((e=>{!e.closest("label").querySelector(".optional-text")&&!e.hasAttribute("required")&&("span"==e.parentNode.tagName.toLowerCase()?e.parentElement.insertAdjacentHTML("beforebegin",'<span class="optional-text"></span>'):e.insertAdjacentHTML("beforebegin",'<span class="optional-text"></span>'))})),document.querySelector('input[type="date"]')){let t=function(e){var t=e.getFullYear(),a=String(e.getMonth()+1).padStart(2,"0"),o=String(e.getDate()).padStart(2,"0");return"".concat(t,"-").concat(a,"-").concat(o)};var e=new Date;Array.from(document.querySelectorAll('input[type="date"]')).forEach((a=>{var o=e;if(a.hasAttribute("data-start")&&(o.setDate(o.getDate()+parseInt(a.getAttribute("data-start"))),a.setAttribute("min",t(o))),a.hasAttribute("data-period")){var n=parseInt(a.getAttribute("data-period")),r=new Date;r.setDate(o.getDate()+n),a.setAttribute("max",t(r))}if(a.hasAttribute("data-allowed-days")){var i=JSON.parse("[".concat(a.getAttribute("data-allowed-days"),"]"));a.addEventListener("input",(function(){var e=new Date(this.value).getUTCDay();i.includes(e)?a.setCustomValidity(""):a.setCustomValidity("That day of the week is not allowed")}))}}))}}"complete"===document.readyState&&t(),document.onreadystatechange=()=>{"complete"===document.readyState&&t()},e.addEventListener("input",(e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("input,textarea,select")){var t=e.target.closest("input,textarea,select");t.hasAttribute("type")&&"color"==t.getAttribute("type")&&(t.nextElementSibling.value=t.value),t.hasAttribute("maxlength")&&t.nextElementSibling&&t.nextElementSibling.setAttribute("data-count",t.value.length),t.hasAttribute("data-strength-checker")&&r(t)}})),e.addEventListener("change",(e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("select")){var t=e.target.closest("select");if(t.hasAttribute("data-change-type")&&t.hasAttribute("data-input")){var a=document.getElementById(t.getAttribute("data-input")),o=t.value;n(a,o)}}if(e&&e.target instanceof HTMLElement&&e.target.closest('dialog [type="radio"]')){var r=e.target.closest("dialog");Array.from(r.querySelectorAll('[type="radio"][autofocus]')).forEach((e=>{e.removeAttribute("autofocus")})),Array.from(r.querySelectorAll('[type="radio"]:checked')).forEach((e=>{e.setAttribute("autofocus",!0)}))}})),e.addEventListener("click",(e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("[data-change-type][data-input]:not(select)")){var t=e.target.closest("[data-change-type]"),a=document.getElementById(t.getAttribute("data-input")),o=t.getAttribute("data-change-type");if(t.setAttribute("data-change-type",a.getAttribute("type")),n(a,o),t.hasAttribute("data-alt-class")){var r=t.getAttribute("data-alt-class");t.setAttribute("data-alt-class",t.getAttribute("class")),t.setAttribute("class",r)}}}))},o=e=>{var t=e.parentElement,a=e.getAttribute("maxlength");t.style.setProperty("--maxlength",a);var o=e.nextElementSibling;(!o||o&&o.classList.contains("invalid-feedback"))&&(o=document.createElement("span"),t.insertBefore(o,e.nextSibling)),o.setAttribute("data-count",e.value.length)},n=(e,t)=>{e.hasAttribute("type")&&"password"==e.getAttribute("type")&&e.setAttribute("data-password-type",!0),e.setAttribute("type",t)},r=function(e){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"no",o=document.getElementById(e.getAttribute("data-strength-checker")),n=e.value,i=e.hasAttribute("minlength")?e.getAttribute("minlength"):12,c=1,d="";if(n.match(/(?=.*[0-9])/)&&(c+=1),n.match(/(?=.*[!,%,&,#,$,^,*,?,_,~,<,>,])/)&&(c+=1),n.match(/(?=.*[a-z])/)&&(c+=1),n.match(/(?=.*[A-Z])/)&&(c+=1),n.length<i&&(c=1,d="(must be at least ".concat(i," characters.)")),c>=3&&"no"==a){let a=function(e,t){e.detail?r(t,"danger"):r(t,"success"),t.removeEventListener("hibpCheck",a)};t(n,e),e.addEventListener("hibpCheck",(function(t){a(t,e)}))}else c>=3&&"danger"==a&&(c=3,d="(this password is very common)");o&&(c<=3?o.classList.add("invalid-feedback"):o.classList.remove("invalid-feedback"),o.setAttribute("data-strength",c),o.innerHTML="Password strength: ".concat(["Very weak","Weak","Average","Strong","Very strong"][c-1]," ").concat(d))},i=(e,t)=>{if(t||(t=e.parentNode.getAttribute("data-change-events")),!t)return!1;Array.from(JSON.parse(t)).forEach((t=>{c(e,t)}))},c=(e,t)=>{if("matches"in t)return"any"==t.matches||e.value==t.matches?d(e,t,"if"):d(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,'"]'))?d(a,t,"if"):d(a,t,"else"),!1}"event"in t&&d(e,t,"event")},d=(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 n=document.querySelector(t.target);n.classList.remove("js-hide"),Array.from(n.querySelectorAll("[data-required]")).forEach((e=>{e.closest(".js-hide")||e.setAttribute("required","true")}))}break;case"populate-form":l(e,t);break;case"dispatchEvent":var r=new Event(t.value);document.querySelector("".concat(t.target)).dispatchEvent(r);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 i=new Event("change");document.querySelector("".concat(t.target)).dispatchEvent(i);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)}},l=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"))}))},s=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())}))},u=()=>s(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 t=void 0,o=void 0,r=function*(){var t,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]")&&i(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]")&&i(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]")&&i(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"),t=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&&t(location.hash),window.addEventListener("hashchange",(function(){t(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"))}})),document.addEventListener("submit",(e=>{if(e&&e.target instanceof HTMLElement&&e.target.matches("form")){var t=e.target;Array.from(t.querySelectorAll("[data-password-type]")).forEach((e=>{e.setAttribute("type","password")})),(t.querySelector(":invalid")||t.querySelector('.pwd-checker[data-strength="1"]')||t.querySelector('.pwd-checker[data-strength="2"]'))&&(t.classList.add("was-validated"),e.preventDefault()),t.querySelector("iam-multiselect[data-is-required][data-error]")&&(t.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(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 s=l.getBoundingClientRect();(t.clientX<s.left||t.clientX>s.right||t.clientY<s.top||t.clientY>s.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")){t.stopPropagation();var u=t.target.closest(".dialog__wrapper > button"),g="openPopover",p=u.parentNode.querySelector(":scope > dialog");if(document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]")!=p&&u.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(),g="closePopover",p.removeAttribute("style"),u.removeAttribute("aria-expanded");else{p.show(),u.setAttribute("aria-expanded",!0);var m=u.getBoundingClientRect(),y=m.top,v=m.left;if(u.closest("iam-table")){var f=u.closest("iam-table").parentNode.getBoundingClientRect();y-=f.top,v-=f.left}p.classList.contains("dialog--fix")&&p.setAttribute("style","position:fixed;top: ".concat(y,"px; left: ").concat(v,"px; margin: 3rem 0 0 0;"))}var b=p.getBoundingClientRect();if(b.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))"),(b=p.getBoundingClientRect()).top-window.scrollY<100&&p.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:g,id:u.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),a(document.body),(e=>{s(void 0,void 0,void 0,(function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield u()),setTimeout((()=>s(void 0,void 0,void 0,(function*(){document.querySelector(".youtube-link[data-youtube]")&&!document.body.classList.contains("youtubeLoaded")&&(yield u())}))),"2000"),e.addEventListener("click",(e=>s(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 u());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),r=new CustomEvent("play-video",{detail:{"Video Type":"YoutTube",ID:t.getAttribute("data-youtube")}});t.dispatchEvent(r),window.dataLayer.push(r.detail),((e,t)=>{s(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 i="vimeo-"+t.getAttribute("data-youtube");document.getElementById("".concat(i,"-dialog"))||document.body.insertAdjacentHTML("beforeend",'<dialog id="'.concat(i,'-dialog"><div class="embed" id="').concat(i,'"></div></dialog>'));var c=document.getElementById("".concat(i,"-dialog")),d=document.getElementById(i),l=t.getAttribute("data-vimeo"),g=new CustomEvent("play-video",{detail:{"Video Type":"Vimeo",ID:l}});t.dispatchEvent(g),window.dataLayer.push(g.detail),d.querySelector("iframe")||(d.innerHTML='<iframe src="https://player.vimeo.com/video/'.concat(l,'?autoplay=1" width="100%" height="100%" frameborder="0" allow="autoplay; encrypted-media" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>')),c.showModal(),c.addEventListener("close",(()=>{d.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,a){function i(e){try{d(r.next(e))}catch(e){a(e)}}function c(e){try{d(r.throw(e))}catch(e){a(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(i,c)}d((r=r.apply(t,o||[])).next())}));var t,o,n,r}))}));
@@ -760,8 +760,6 @@ $ut-mh-lg-px: 600;
760
760
  $ut-mh-lg: #{rem($ut-mh-lg-px)};
761
761
  // #endregion
762
762
 
763
-
764
-
765
763
  $chart-colour-1: map.get($wider-colours, '3') !default;
766
764
  $chart-colour-2: map.get($wider-colours, '4') !default;
767
765
  $chart-colour-3: map.get($wider-colours, '5') !default;
@@ -789,4 +787,3 @@ $chart-colors: map.merge(
789
787
  ),
790
788
  $chart-colors
791
789
  );
792
-
@@ -359,9 +359,8 @@ slot[name='selectall'] {
359
359
  position: relative;
360
360
  }
361
361
 
362
- :host([data-filter-columns][data-columns-shown="0"]) .actionbar__wrapper + .no-columns,
363
- :host([data-filter-columns-save][data-columns-shown="0"]) .actionbar__wrapper + .no-columns {
364
-
362
+ :host([data-filter-columns][data-columns-shown='0']) .actionbar__wrapper + .no-columns,
363
+ :host([data-filter-columns-save][data-columns-shown='0']) .actionbar__wrapper + .no-columns {
365
364
  display: flex;
366
365
  padding: 2rem 2rem 0 2rem;
367
366
  text-align: center;
@@ -201,7 +201,6 @@ iam-bento-grid {
201
201
  iam-bento-grid {
202
202
  @container (width > 54em) {
203
203
  details {
204
-
205
204
  overflow: hidden;
206
205
 
207
206
  summary {
@@ -2,8 +2,6 @@
2
2
 
3
3
  @use '../_func' as *;
4
4
 
5
-
6
-
7
5
  $chart-colour-1-hover: map.get($wider-colours-hover, '3') !default;
8
6
  $chart-colour-2-hover: map.get($wider-colours-hover, '4') !default;
9
7
  $chart-colour-3-hover: map.get($wider-colours-hover, '5') !default;
@@ -1,17 +1,36 @@
1
+ @use '../_func.scss' as *;
2
+
1
3
  :host {
4
+ //all: unset;
2
5
  inset: auto;
3
- top: anchor(top);
4
- left: calc(anchor(right) + var(--menu-offset, 0.25rem));
6
+ top: anchor(bottom);
7
+ left: anchor(left);
5
8
  position: fixed;
6
9
  position-try-fallbacks: flip-block, flip-inline;
7
10
  width: max-content;
8
- min-width: calc(anchor-size(width) + 2rem);
9
11
 
10
- max-height: var(--menu-max-height, min-contents);
12
+ height: min-content;
13
+ max-height: var(--menu-max-height, min(100vh - 6rem));
11
14
  background: var(--menu-bg, canvas);
12
15
  margin: var(--menu-margin, 0);
13
- padding: var(--menu-padding, 0.25rem);
16
+ padding: var(--menu-padding, 0.5rem);
14
17
  border: var(--menu-border, 2px solid grey);
18
+ overflow: auto;
19
+
20
+ border: none !important;
21
+ border-radius: 0.5rem;
22
+ box-shadow: 0px 2px 9px rgba(0, 0, 0, 0.1);
23
+ }
24
+
25
+ :host(.menu--fill) {
26
+ width: anchor-size(width);
27
+ min-width: anchor-size(width);
28
+ max-width: anchor-size(width);
29
+ }
30
+
31
+ :host(:popover-open),
32
+ :host([popover-open]) {
33
+ display: block;
15
34
  }
16
35
 
17
36
  :host(:not([popover])) {
@@ -19,61 +38,133 @@
19
38
  display: block;
20
39
  }
21
40
 
22
- .menu--inner {
23
- display: contents;
41
+ :host(.menu--sm) {
42
+ width: rem(160);
43
+ }
44
+ :host(.menu--md) {
45
+ width: rem(240);
46
+ }
47
+ :host(.menu--lg) {
48
+ width: rem(320);
24
49
  }
25
50
 
26
- ::slotted(*:not(iam-menu)) {
51
+ :host(.menu--height-sm) {
52
+ max-height: rem(200);
53
+ }
54
+ :host(.menu--height-lg) {
55
+ max-height: rem(400);
56
+ }
57
+
58
+ ::slotted(*:is(button, a, label, span)) {
27
59
  //all: unset !important;
28
60
  background: unset !important;
29
61
  border: unset !important;
30
- color: inherit !important;
62
+ color: var(--colour-primary) !important;
31
63
  font-weight: inherit !important;
32
64
  font-family: inherit !important;
33
65
  font-size: 1rem !important;
66
+ line-height: rem(19) !important;
34
67
  display: block !important;
35
68
  margin: var(--menu-item-margin, 0 0 0.25rem 0) !important;
36
- padding: var(--menu-item-padding, 0) !important;
69
+ padding-block: var(--menu-item-padding, 0.5rem) !important;
37
70
  width: var(--menu-item-width, 100%) !important;
71
+ max-width: var(--menu-item-width, 100%) !important;
38
72
  text-align: var(--menu-item-text-align, left) !important;
73
+ }
74
+
75
+ ::slotted(*:is(button, a, label)) {
76
+ padding-inline: var(--menu-item-padding, 0.5rem);
39
77
  cursor: var(--menu-item-cursor, pointer) !important;
40
78
  }
41
79
 
42
- ::slotted(details) {
43
- margin: 0 !important;
44
- padding: 0 !important;
80
+ ::slotted(*:is(span):first-child) {
81
+ padding-top: 0 !important;
82
+ font-weight: 700 !important;
45
83
  }
46
- ::slotted(*:not(iam-menu):not([class*='fa-'])):before {
47
- display: none !important;
84
+
85
+ ::slotted(*:is(button, a, label, span):last-child) {
86
+ margin-bottom: 0 !important;
48
87
  }
49
- ::slotted(*[class*='fa-']):before {
50
- font-family: var(--fa-font-family, 'Font Awesome 6 Pro');
88
+
89
+ // Radio buttons
90
+
91
+ ::slotted(*:is(label)) {
92
+ --radio-size: #{rem(20)};
93
+ --radio-inner-size: #{rem(12)};
94
+ --radio-inner-top: #{rem(12)};
95
+ --radio-inner-left: #{rem(12)};
96
+
97
+ --checkbox-tick-size: #{rem(12)};
98
+ --checkbox-inner-size: #{rem(10)};
99
+ --checkbox-inner-top: #{rem(6)};
100
+ --checkbox-inner-left: #{rem(8)};
101
+ padding-left: rem(36) !important;
51
102
  }
52
- ::slotted(*:not(iam-menu)):after {
53
- display: none !important;
103
+
104
+ // States
105
+
106
+ ::slotted(*:is(button, a, label):is(.selected)) {
107
+ background: #e9f8fc !important;
108
+ border-left: 4px solid var(--colour-info) !important;
109
+ border-radius: 0.25rem !important;
110
+
111
+
112
+ padding-left: calc(var(--menu-item-padding, 0.5rem) - 4px)!important;
54
113
  }
55
114
 
56
- ::slotted(*:not(iam-menu):focus) {
57
- color: var(--menuFocusColor, LinkText) !important;
115
+ @media (prefers-color-scheme: dark) {
116
+
117
+ ::slotted(*:is(button, a, label):is(.selected):not(:hover, .hover)) {
118
+
119
+ color: black!important;
120
+ }
58
121
  }
59
- ::slotted(*:not(iam-menu):not(details):hover) {
60
- color: var(--menuHoverColor, LinkText) !important;
122
+
123
+ ::slotted(*:is(button, a, label):is(:hover, .hover, :focus, .focus)) {
124
+ //all: unset !important;
125
+ background: var(--colour-light) !important;
126
+ border-radius: 0.25rem !important;
127
+ }
128
+
129
+ ::slotted(*:is(button, a, label):is(:active, .active)) {
130
+ background: rgba(224, 224, 224, 1) !important;
131
+ border-radius: 0.25rem !important;
61
132
  }
62
- ::slotted(*:not(iam-menu):not(details):active) {
63
- color: var(--menuActiveColor, ActiveText) !important;
133
+
134
+ @media (prefers-color-scheme: dark) {
135
+
136
+ ::slotted(*:is(button, a, label):is(:active, .active)) {
137
+
138
+ color: black!important;
139
+ }
64
140
  }
65
141
 
66
142
  ::slotted(hr) {
67
- height: 2px !important;
143
+ height: 1px !important;
68
144
  background-color: var(--menu-hr-border-color, var(--border-color, grey)) !important;
69
- margin-left: calc(var(--menu-padding, 0.25rem) * -1) !important;
70
- margin-right: calc(var(--menu-padding, 0.25rem) * -1) !important;
71
- width: calc(100% + var(--menu-padding, 0.25rem) * 2) !important;
72
- margin-top: var(--menu-hr-margin, 0.75rem) !important;
73
- margin-bottom: var(--menu-hr-margin, 1rem) !important;
145
+ width: 100%;
146
+ margin: var(--menu-item-margin, 0 0 0.25rem 0) !important;
74
147
  padding: 0 !important;
75
148
  }
76
149
 
150
+ // #region sub menu
151
+ ::slotted(iam-menu:not([popover])) {
152
+ border: none !important;
153
+ border-radius: 0 !important;
154
+ box-shadow: none !important;
155
+ padding: 0;
156
+ margin: 0;
157
+ width: auto;
158
+ }
159
+
160
+ ::slotted(iam-menu[popover]) {
161
+ top: anchor(top);
162
+ left: calc(anchor(right) + 1rem);
163
+ }
164
+ // #endregion
165
+
166
+ /*
167
+
77
168
  ::slotted([popovertarget]):before {
78
169
  text-align: center;
79
170
  display: inline-block !important;
@@ -99,3 +190,4 @@
99
190
  -webkit-mask-position: 50% 50%;
100
191
  z-index: 2;
101
192
  }
193
+ */
@@ -5,17 +5,78 @@ $mobileOnly: 'false' !default;
5
5
  $darkMode: 'true' !default;
6
6
 
7
7
  @include layer('components', $layers) {
8
- $menuPadding: 1rem !default;
9
- $menuBorder: none !default;
10
- $menuBorderRadius: 1rem !default;
11
- $menuBoxShadow: 0px 2px 9px rgba(0, 0, 0, 0.1) !default;
8
+ $menuPadding: 0.5rem !default;
12
9
 
13
10
  iam-menu:defined {
14
11
  --menu-padding: #{$menuPadding};
15
12
  --border-color: var(--colour-border);
16
13
  --menu-item-margin: 0 0 0.5rem 0;
17
- border: #{$menuBorder};
18
- border-radius: #{$menuBorderRadius};
19
- box-shadow: #{$menuBoxShadow};
20
14
  }
15
+
16
+ iam-menu i {
17
+ width: 1.25rem;
18
+ }
19
+
20
+ // #region sub menu
21
+
22
+ iam-menu > button:has(+ iam-menu) {
23
+ position: relative;
24
+
25
+ &:after {
26
+ content: '';
27
+ height: var(--btn-line-height);
28
+ width: rem(16);
29
+ height: rem(16);
30
+ display: inline-block;
31
+ background: currentColor;
32
+ mask-image: var(--icon-arrow);
33
+ mask-size: 100%;
34
+ mask-repeat: no-repeat;
35
+ mask-position: 50% 50%;
36
+ -webkit-mask-image: var(--icon-arrow);
37
+ -webkit-mask-size: 100%;
38
+ -webkit-mask-repeat: no-repeat;
39
+ -webkit-mask-position: 50% 50%;
40
+ vertical-align: bottom;
41
+
42
+ position: absolute;
43
+ top: calc(50% - 0.5rem);
44
+ right: 0.5rem;
45
+ }
46
+ }
47
+
48
+ iam-menu > button:has(+ iam-menu:not([popover])) {
49
+ &:after {
50
+ rotate: 90deg;
51
+ }
52
+ }
53
+
54
+ iam-menu > button.open:has(+ iam-menu:not([popover])) {
55
+ position: relative;
56
+
57
+ &:after {
58
+ top: calc(50% - 0.5rem);
59
+ right: 0.5rem;
60
+ rotate: 270deg;
61
+ }
62
+ }
63
+
64
+ iam-menu > button:has(+ iam-menu:popover-open) {
65
+ position: relative;
66
+
67
+ &:after {
68
+ top: calc(50% - 0.5rem);
69
+ right: 0.5rem;
70
+ rotate: 180deg;
71
+ }
72
+ }
73
+
74
+ iam-menu > button:not(.open) + iam-menu:not([popover]) {
75
+ display: none;
76
+ }
77
+
78
+ iam-menu > button + iam-menu:not([popover]) > *:is(button, a, label) {
79
+ padding-left: 2rem;
80
+ }
81
+ // #endregion
21
82
  }
@@ -10,9 +10,7 @@
10
10
  box-sizing: border-box;
11
11
  }
12
12
 
13
-
14
13
  :host {
15
-
16
14
  display: block;
17
15
  text-align: center;
18
16
  margin-bottom: 2rem;
@@ -21,7 +19,6 @@
21
19
  }
22
20
 
23
21
  .rank {
24
-
25
22
  position: relative;
26
23
  display: flex;
27
24
 
@@ -39,11 +36,11 @@
39
36
  .position {
40
37
  margin: 0;
41
38
  padding: 0;
42
- line-height: 1!important;
39
+ line-height: 1 !important;
43
40
  }
44
-
41
+
45
42
  .position:after {
46
- content: var(--rank-sub-text, "Your rank");
43
+ content: var(--rank-sub-text, 'Your rank');
47
44
  display: block;
48
45
  font-size: rem(map.get($heading-sizes, 'lead_fs'));
49
46
  line-height: 1;
@@ -61,11 +58,9 @@
61
58
  }
62
59
  }
63
60
 
64
-
65
- :host([data-position="1st"]),
66
- :host([data-position="2nd"]),
67
- :host([data-position="3rd"]) {
68
-
61
+ :host([data-position='1st']),
62
+ :host([data-position='2nd']),
63
+ :host([data-position='3rd']) {
69
64
  .rank {
70
65
  border-width: 0;
71
66
  overflow: hidden;
@@ -76,22 +71,19 @@
76
71
  }
77
72
  }
78
73
 
79
- :host([data-position="1st"]) {
80
-
74
+ :host([data-position='1st']) {
81
75
  .rank {
82
-
83
- background: #FFEE56;
76
+ background: #ffee56;
84
77
  }
85
-
78
+
86
79
  .rank svg:nth-child(1) {
87
80
  display: block;
88
81
  }
89
82
  }
90
83
 
91
- :host([data-position="2nd"]) {
92
-
84
+ :host([data-position='2nd']) {
93
85
  .rank {
94
- background: #EDEDED;
86
+ background: #ededed;
95
87
  }
96
88
 
97
89
  .rank svg:nth-child(2) {
@@ -99,13 +91,12 @@
99
91
  }
100
92
  }
101
93
 
102
- :host([data-position="3rd"]) {
103
-
94
+ :host([data-position='3rd']) {
104
95
  .rank {
105
- background: #FFE798;
96
+ background: #ffe798;
106
97
  }
107
98
 
108
99
  .rank svg:nth-child(3) {
109
100
  display: block;
110
101
  }
111
- }
102
+ }
@@ -1,8 +1,6 @@
1
1
  @use 'sass:map';
2
2
  @use '../_func.scss' as *;
3
3
 
4
-
5
-
6
4
  @use '../elements/type.scss' as *;
7
5
 
8
6
  @include max-height();
@@ -14,7 +12,6 @@
14
12
  }
15
13
 
16
14
  .podium {
17
-
18
15
  display: flex;
19
16
  flex-direction: row;
20
17
  flex-wrap: nowrap;
@@ -29,7 +26,6 @@
29
26
  order: 1;
30
27
 
31
28
  iam-rank {
32
-
33
29
  margin: 0;
34
30
  width: 100%;
35
31
  }
@@ -48,14 +44,12 @@
48
44
  }
49
45
  }
50
46
 
51
-
52
47
  > div:nth-child(1) {
53
48
  order: 2;
54
49
  padding: 0;
55
50
  }
56
51
 
57
52
  > div:nth-child(2) {
58
-
59
53
  padding: 1rem 1rem 0 0;
60
54
  }
61
55
 
@@ -63,4 +57,4 @@
63
57
  order: 3;
64
58
  padding: 1rem 0 0 1rem;
65
59
  }
66
- }
60
+ }
@@ -11,7 +11,6 @@
11
11
  }
12
12
 
13
13
  iam-rankings {
14
-
15
14
  table {
16
15
  display: block;
17
16
  width: 100%;
@@ -25,14 +24,14 @@ iam-rankings {
25
24
  display: contents;
26
25
  }
27
26
 
28
- :is(td,th) {
27
+ :is(td, th) {
29
28
  font-weight: normal;
30
29
  }
31
30
 
32
31
  tr.current {
33
32
  background-color: var(--colour-light);
34
33
  }
35
- tr.current :is(td,th) {
34
+ tr.current :is(td, th) {
36
35
  font-weight: bolder;
37
36
  }
38
37
 
@@ -40,11 +39,10 @@ iam-rankings {
40
39
  display: flex;
41
40
  width: 100%;
42
41
  position: relative;
43
-
44
42
 
45
43
  &:before {
46
44
  counter-increment: countItem; /* Increment the value of section counter by 1 */
47
- content: counter(countItem)".";
45
+ content: counter(countItem) '.';
48
46
  font-size: rem(32);
49
47
  line-height: rem(40);
50
48
  font-weight: bolder;
@@ -68,17 +66,13 @@ iam-rankings {
68
66
 
69
67
  progress {
70
68
  width: 100%;
71
- height: 1rem ;
69
+ height: 1rem;
72
70
  }
73
71
  }
74
72
 
75
-
76
73
  @each $index, $value in $chart-colors {
77
- tr:nth-child(#{$index}) progress{
74
+ tr:nth-child(#{$index}) progress {
78
75
  --colour: var(--chart-colour-#{$index}, #{$value});
79
76
  }
80
-
81
77
  }
82
-
83
-
84
- }
78
+ }