@iamproperty/components 7.8.2--beta5 → 7.8.2--beta6

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 (85) hide show
  1. package/assets/css/core.min.css +1 -1
  2. package/assets/css/core.min.css.map +1 -1
  3. package/assets/css/style.min.css +1 -1
  4. package/assets/css/style.min.css.map +1 -1
  5. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  6. package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
  7. package/assets/js/components/address-lookup/address-lookup.component.min.js +2 -2
  8. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  9. package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
  10. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  11. package/assets/js/components/banner/banner.component.min.js +1 -1
  12. package/assets/js/components/barchart/barchart.component.min.js +1 -1
  13. package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
  14. package/assets/js/components/bone/bone.component.min.js +1 -1
  15. package/assets/js/components/button/button.component.min.js +1 -1
  16. package/assets/js/components/calendar/calendar.component.min.js +1 -1
  17. package/assets/js/components/card/card.component.min.js +1 -1
  18. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  19. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  20. package/assets/js/components/config/config.component.min.js +2 -2
  21. package/assets/js/components/config/config.component.min.js.map +1 -1
  22. package/assets/js/components/content/content.component.min.js +1 -1
  23. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  24. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +1 -1
  25. package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
  26. package/assets/js/components/filter-card/filter-card.component.min.js +1 -1
  27. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  28. package/assets/js/components/form/form.component.min.js +1 -1
  29. package/assets/js/components/header/header.component.min.js +1 -1
  30. package/assets/js/components/inline-edit/inline-edit.component.min.js +2 -2
  31. package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
  32. package/assets/js/components/input/input.component.min.js +1 -1
  33. package/assets/js/components/input-range/input-range.component.min.js +1 -1
  34. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  35. package/assets/js/components/menu/menu.component.min.js +1 -1
  36. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  37. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  38. package/assets/js/components/modal/modal.component.min.js +1 -1
  39. package/assets/js/components/multi-step/multi-step.component.min.js +2 -2
  40. package/assets/js/components/multi-step/multi-step.component.min.js.map +1 -1
  41. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +2 -2
  42. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -1
  43. package/assets/js/components/multiselect/multiselect.component.min.js +2 -2
  44. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  45. package/assets/js/components/nav/nav.component.js +1 -1
  46. package/assets/js/components/nav/nav.component.min.js +2 -2
  47. package/assets/js/components/nav/nav.component.min.js.map +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/password/password.component.min.js +1 -1
  51. package/assets/js/components/popover/popover.component.min.js +1 -1
  52. package/assets/js/components/rank/rank.component.min.js +1 -1
  53. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  54. package/assets/js/components/rating/rating.component.min.js +1 -1
  55. package/assets/js/components/record-card/record-card.component.min.js +1 -1
  56. package/assets/js/components/search/search.component.min.js +2 -2
  57. package/assets/js/components/search/search.component.min.js.map +1 -1
  58. package/assets/js/components/skeleton/skeleton.component.min.js +1 -1
  59. package/assets/js/components/slider/slider.component.min.js +1 -1
  60. package/assets/js/components/split-button/split-button.component.min.js +1 -1
  61. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +3 -3
  62. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  63. package/assets/js/components/std-nav/std-nav.component.min.js +2 -2
  64. package/assets/js/components/std-nav/std-nav.component.min.js.map +1 -1
  65. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js +1 -1
  66. package/assets/js/components/table/table.component.min.js +1 -1
  67. package/assets/js/components/table-ajax/table-ajax.component.min.js +1 -1
  68. package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
  69. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
  70. package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
  71. package/assets/js/components/tabs/tabs.component.min.js +1 -1
  72. package/assets/js/components/tag/tag.component.min.js +2 -2
  73. package/assets/js/components/tag/tag.component.min.js.map +1 -1
  74. package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
  75. package/assets/js/components/video/video.component.min.js +1 -1
  76. package/assets/js/components/video-card/video-card.component.min.js +1 -1
  77. package/assets/js/components/video-modal/video-modal.component.min.js +1 -1
  78. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  79. package/assets/js/scripts.bundle.js +1 -1
  80. package/assets/js/scripts.bundle.min.js +1 -1
  81. package/assets/sass/foundations/colours.scss +15 -0
  82. package/assets/ts/components/nav/nav.component.ts +1 -1
  83. package/dist/components.es.js +2662 -1246
  84. package/dist/components.umd.js +363 -363
  85. package/package.json +5 -5
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  *//*! js-cookie v3.0.7 | MIT */function g(l){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var e in a)e!=="__proto__"&&(l[e]=a[e])}return l}var x={read:function(l){return l[0]==='"'&&(l=l.slice(1,-1)),l.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(l){return encodeURIComponent(l).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function u(l,i){function a(t,r,s){if(!(typeof document>"u")){s=g({},i,s),typeof s.expires=="number"&&(s.expires=new Date(Date.now()+s.expires*864e5)),s.expires&&(s.expires=s.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var n="";for(var o in s)s[o]&&(n+="; "+o,s[o]!==!0&&(n+="="+s[o].split(";")[0]));return document.cookie=t+"="+l.write(r,t)+n}}function e(t){if(!(typeof document>"u"||arguments.length&&!t)){for(var r=document.cookie?document.cookie.split("; "):[],s={},n=0;n<r.length;n++){var o=r[n].split("="),m=o.slice(1).join("=");try{var d=decodeURIComponent(o[0]);if(d in s||(s[d]=l.read(m,d)),t===d)break}catch{}}return t?s[t]:s}}return Object.create({set:a,get:e,remove:function(t,r){a(t,"",g({},r,{expires:-1}))},withAttributes:function(t){return u(this.converter,g({},this.attributes,t))},withConverter:function(t){return u(g({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(i)},converter:{value:Object.freeze(l)}})}u(x,{path:"/"});var f=function(l,i,a,e){function t(r){return r instanceof a?r:new a(function(s){s(r)})}return new(a||(a=Promise))(function(r,s){function n(d){try{m(e.next(d))}catch(c){s(c)}}function o(d){try{m(e.throw(d))}catch(c){s(c)}}function m(d){d.done?r(d.value):t(d.value).then(n,o)}m((e=e.apply(l,i||[])).next())})};const y=l=>{let i="";return l.forEach(a=>{a.attributes.sections.length?i+=`<details name="megamenu"><summary>${a.attributes.title}</summary><div data-title="${a.attributes.title}">${_(a.attributes.sections)}</div></details>`:a.attributes.links?i+=`<details name="megamenu"><summary>${a.attributes.title}</summary><div data-title="${a.attributes.title}">${w(a.attributes.links)}</div></details>`:i+=`<a href="/">${a.attributes.title}</a>`}),i},_=l=>{let i="";return l.forEach(a=>{i+=`<span class="section section--${a.layout}">
5
5
  ${a.title?`<span class="lead section-title" data-product="${a.id}" data-title>${a.title}:</span>`:""}
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
  <div class="backdrop" part="backdrop"></div>
41
41
  `,i.appendChild(a.content.cloneNode(!0)),document.getElementById("navGlobal")||document.head.insertAdjacentHTML("beforeend",`<style id="navGlobal">:is(iam-nav,.iam-nav)>.nav--menu{--colour-heading: var(--colour-primary-theme);color-scheme:light}:is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>:not([slot=logo],[slot=secondary]){color-scheme:light}.dark-theme :is(iam-nav,.iam-nav)>:not([slot=logo],[slot=secondary]){color-scheme:dark}.dark-theme :is(iam-nav,.iam-nav)>.nav--menu{--colour-heading: var(--colour-white);color-scheme:dark}.dark-theme :is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark){--menu-btn-colour: var(--colour-white)}@media(prefers-color-scheme: dark){html:not(.light-theme) :is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark){--menu-btn-colour: var(--colour-heading)}}@media screen and (min-width: 62em){:is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>:not([slot=logo],[slot=secondary],[slot=menus]){color-scheme:dark}:is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>details>div{color-scheme:light}.dark-theme :is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>:not([slot=logo],[slot=secondary],[slot=menus]){color-scheme:light}.dark-theme :is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>details>div{color-scheme:dark}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){html:not(.light-theme) :is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>:not([slot=logo],[slot=secondary],[slot=menus]){color-scheme:light}html:not(.light-theme) :is(iam-nav,.iam-nav):is(.bg-primary,.bg-danger,.bg-dark)>details>div{color-scheme:dark}}body:has(:is(iam-nav,.iam-nav).open:not(.nav--sticky,.demo-open):not(.nav--xs-sticky)){max-height:100vh;overflow:hidden}body{--nav-height: 6rem;--sticky-padding: 0px}body:has(:is(iam-nav,.iam-nav) a[slot=secondary]){--nav-height: 8.5rem}body:has(:is(iam-nav,.iam-nav).nav--sticky){--sticky-padding: var(--nav-height)}nav:has(:is(iam-nav,.iam-nav)){min-height:6rem;display:block;position:relative}nav:has(:is(iam-nav,.iam-nav)) :is(iam-nav,.iam-nav){position:absolute;top:0;left:0;width:100svw;z-index:var(--index-menu)}@media screen and (min-width: 62em){nav:has(:is(iam-nav,.iam-nav) [slot=secondary]){min-height:8.5rem}}nav:has(.nav--sticky){position:sticky;top:0;left:0;right:0;z-index:9999}nav:has(.nav--sticky) .nav--sticky{position:fixed;outline:2px solid #eee;transition:margin 1s}@media screen and (max-width: 36em){body:has(:is(iam-nav,.iam-nav).open:not(.nav--xs-sticky,.demo-open)){max-height:100vh;overflow:hidden;margin-top:0rem}nav:has(:is(iam-nav,.iam-nav).nav--xs-sticky){position:sticky;top:0;left:0;right:0;z-index:9999;transition:margin 1s}nav:has(:is(iam-nav,.iam-nav).nav--xs-sticky) :is(iam-nav,.iam-nav){position:fixed}body[data-direction=down].past100 nav:has(.nav--xs-sticky){margin-top:-8rem}}@media screen and (min-width: 36em){body:has(:is(iam-nav,.iam-nav).open:not(.nav--sticky)){max-height:100vh;overflow:hidden}}body[data-direction=down].past100 nav:has(.nav--sticky) .nav--sticky{margin-top:-8rem}:is(iam-nav,.iam-nav){--nav-height: 6rem}:is(iam-nav,.iam-nav):has([slot=secondary]){--nav-height: 8.5rem}:is(iam-nav,.iam-nav){overscroll-behavior:contain !important;background-color:var(--colour-canvas);display:block;margin-left:auto;margin-right:auto;padding:var(--container-padding);padding-top:1.5rem;padding-bottom:1.5rem;width:100%}:is(iam-nav,.iam-nav) .brand{font-size:3rem;height:3rem;padding:0;text-decoration:none;min-width:min(var(--svg-width),14rem);margin-right:auto}:is(iam-nav,.iam-nav) .brand img{height:100%;width:auto}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card)){text-decoration:none}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card)) .badge{position:absolute;right:0;top:50%;margin-top:-0.8rem}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card)):where(:hover,:focus,.selected,[aria-current=page]){text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-underline)}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card)):active{text-decoration-color:#a2d393 !important}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card)).active,:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card)).selected,:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card))[aria-current=page]{text-decoration-color:var(--colour-info) !important}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card))[data-product][data-feature]:not([data-is-enabled=true]){padding-left:2rem !important}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card))[data-product][data-feature]:not([data-is-enabled=true]):before{content:"\uF890";font-family:var(--fa-family, var(--fa-style-family, "Font Awesome 7 Pro"));padding-right:.5em;position:absolute;left:0;font-weight:700}:is(iam-nav,.iam-nav) .section [data-title].section-title{display:block}:is(iam-nav,.iam-nav) .section [data-product].section-desc{display:none}:is(iam-nav,.iam-nav) .section:not(:has([data-product][data-feature][data-is-enabled=true])):has([data-product].section-desc) [data-product].section-title{display:none}:is(iam-nav,.iam-nav) .section:not(:has([data-product][data-feature][data-is-enabled=true])):has([data-product].section-desc) [data-product].section-desc{display:block}:is(iam-nav,.iam-nav) .section:has([href=null]):not(:has(a:not([href=null]))){display:none !important}:is(iam-nav,.iam-nav) .section [href=null]{display:none !important}@container style(--body-theme: dark){:is(iam-nav,.iam-nav).bg-primary [slot=secondary]{--colour-link: white}}:is(iam-nav,.iam-nav) details{padding-bottom:0}:is(iam-nav,.iam-nav) details>summary{text-decoration:none}:is(iam-nav,.iam-nav) details>summary:where(:hover,:focus,.selected){text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-underline)}:is(iam-nav,.iam-nav) details>summary:active{text-decoration-color:#a2d393 !important}:is(iam-nav,.iam-nav) details[open]>summary{text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-success)}:is(iam-nav,.iam-nav) details:has([aria-current=page]:not([data-duplicate]))>summary{text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-info)}@container style(--mobDetails){:is(iam-nav,.iam-nav) details{margin-left:-1.5rem;margin-right:-1.5rem;padding-inline:1.5rem;width:auto;position:relative}:is(iam-nav,.iam-nav) details .section [data-title].section-title{color:var(--colour-body) !important;font-size:1rem;font-weight:normal;font-weight:normal}:is(iam-nav,.iam-nav) details summary{background-color:var(--colour-canvas-2);display:block;border:none;color:var(--colour-link);margin:0;margin-left:-1.5rem;margin-right:-1.5rem;padding:1.5rem 4rem 1.5rem 1.5rem;font-size:1rem;line-height:1.5rem;min-height:1.5rem;position:relative;font-weight:normal}:is(iam-nav,.iam-nav) details summary:after{content:"\uF055";display:block;font-size:1.5rem;font-weight:300;position:absolute;top:1.5rem;right:1.5rem;font-family:var(--fa-family-classic);line-height:1em}:is(iam-nav,.iam-nav) details[open]>summary:after{content:"\uF056";font-weight:bold}:is(iam-nav,.iam-nav) details a{text-decoration:none;display:block;border:none;color:var(--colour-link);margin:0;margin-left:3rem !important;padding:1.5rem 0 1.5rem 0;font-size:1rem;line-height:1.5rem;min-height:1.5rem;position:relative;font-weight:normal}:is(iam-nav,.iam-nav) details a:after{background:var(--colour-border) !important;top:calc(100% - 2px) !important;width:100% !important}:is(iam-nav,.iam-nav) details a:has(iam-card){display:none !important}:is(iam-nav,.iam-nav) details>div .lead{padding:1rem 0 0 3rem !important}:is(iam-nav,.iam-nav) details>div a:last-child{margin-bottom:0 !important}:is(iam-nav,.iam-nav) details>div a:last-child:after{display:none}:is(iam-nav,.iam-nav) details:after{content:"";position:absolute;top:calc(100% - 2px);left:1.5rem;height:2px;width:calc(100% - 3rem);display:block;height:2px;background-color:var(--colour-border) !important}:is(iam-nav,.iam-nav) details[slot=secondary]{background-color:rgba(0,0,0,0)}:is(iam-nav,.iam-nav) details[slot=secondary] summary{background-color:rgba(0,0,0,0)}}@media screen and (max-width: 62em){:is(iam-nav,.iam-nav) details{background-color:#eee}:is(iam-nav,.iam-nav){--mobDetails: 'true'}:is(iam-nav,.iam-nav) details details:after{display:none}:is(iam-nav,.iam-nav) details details summary{padding:0 1.5rem 1.5rem 3.5rem;position:relative}:is(iam-nav,.iam-nav) details details summary:after{left:1.5rem;font-size:1rem;top:.1875rem;transform:none;font-weight:400}:is(iam-nav,.iam-nav) details details>div{color-scheme:light}:is(iam-nav,.iam-nav) details a+details>summary{padding-top:1.5rem}:is(iam-nav,.iam-nav) details a+details>summary:after{margin-top:1.5rem}:is(iam-nav,.iam-nav) details details[open]+details:before{content:"";display:block;background:var(--colour-canvas-2);padding-top:1.5rem;margin-left:-1.5rem;margin-right:-1.5rem}}@container style(--tabletDetails){:is(iam-nav,.iam-nav) details{padding-right:2.5rem;margin-right:-2.5rem}:is(iam-nav,.iam-nav) details:after{width:calc(100% - 4rem)}:is(iam-nav,.iam-nav) details summary{padding-right:2.5rem;margin-right:-2.5rem}:is(iam-nav,.iam-nav) details summary:after{right:2.5rem}}@media screen and (max-width: 62em)and (min-width: 36em){:is(iam-nav,.iam-nav){--tabletDetails: 'true'}:is(iam-nav,.iam-nav) details details[open]+details:before{padding-right:2.5rem;margin-right:-2.5rem}}@media screen and (min-width: 62em){:is(iam-nav,.iam-nav) .nav--menu{--mobDetails: 'true';--tabletDetails: 'true'}}@media screen and (min-width: 62em){:is(iam-nav,.iam-nav)>details:not([slot=secondary]),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]){width:auto}:is(iam-nav,.iam-nav)>details:not([slot=secondary])>summary,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])>summary{display:block;border:none;color:var(--colour-link);margin:0;font-size:1rem;line-height:6rem;min-height:6rem;margin-block:-1.5rem;position:relative;font-weight:normal;white-space:nowrap;padding-right:1.5rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])>summary:after,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])>summary:after{content:"\uF078";display:block;font-size:1rem;font-weight:300;position:absolute;top:50%;transform:translate(0, -50%);right:0;font-family:var(--fa-family-classic);line-height:1em}:is(iam-nav,.iam-nav)>details:not([slot=secondary]):not(:first-child)>summary,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]):not(:first-child)>summary{margin-left:1.5rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) div,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) div{display:none}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div{position:absolute;display:block;top:100%;left:0;width:100%;padding-inline:max(var(--padding-inline),(100% - var(--container-max-width))/2 + var(--padding-inline)) !important;box-shadow:0px 6px 12px rgba(0,0,0,.11);max-height:calc(100vh - var(--nav-height));width:100svw;overflow:auto;flex-wrap:wrap}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div .lead,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div .lead{padding:1rem 0 0 0 !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details){background:var(--colour-canvas-2)}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details)>a,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details)>a{display:inline-block !important;margin-right:2rem !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details)>a:first-child,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details)>a:first-child{margin-right:0}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details)>a:after,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details)>a:after{display:none !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details) a:has(iam-card),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details) a:has(iam-card){display:none}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details) details,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details) details{display:inline-block}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details) details summary,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details) details summary{display:inline-block;margin-left:0 !important;margin-right:2rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(details) details:first-child summary,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(details) details:first-child summary{margin-left:0}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)){background:var(--colour-canvas);padding-top:8rem;padding-bottom:4rem;columns:3;column-gap:6.875rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details))>a,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details))>a{margin-right:0 !important;display:block;max-height:6rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details))>a.double-height,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details))>a.double-height{min-height:6rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)) a:has(iam-card),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)) a:has(iam-card){display:inline-block}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)):before,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)):before{content:attr(data-title);display:block;position:absolute;top:0;left:0;width:100%;color:var(--colour-white);padding-inline:max(var(--padding-inline),(100% - var(--container-max-width))/2 + var(--padding-inline)) !important;font-size:2rem;font-weight:bold;line-height:5.5rem;--gradient-direction: 90deg;background-color:var(--colour-info-theme);background-image:linear-gradient(var(--gradient-direction), var(--colour-primary-theme) 0, transparent 100%) !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card){column-gap:1rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card)),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card)){margin-right:5.875rem !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card) a:has(iam-card):after,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card) a:has(iam-card):after{display:none}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card))+a:has(iam-card),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card))+a:has(iam-card){break-before:column}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section){display:flex}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section)>span.section,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section)>span.section{display:block;flex-grow:1}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section)>span.section .lead,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section)>span.section .lead{column-span:all}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section)>span.section.section--double,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section)>span.section.section--double{display:block;width:calc(66.66% - 6.875rem);columns:2;column-gap:6.875rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section)>span.section.section--double .lead,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section)>span.section.section--double .lead{column-span:all}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section)>span.section:first-child:last-child,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section)>span.section:first-child:last-child{display:block;width:calc(66.66% - 6.875rem);columns:3;column-gap:6.875rem}:is(iam-nav,.iam-nav)>details:not([slot=secondary])[open]>div:has(span.section)>span.section:first-child:last-child .lead,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary])[open]>div:has(span.section)>span.section:first-child:last-child .lead{column-span:all}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)){font-size:1rem;line-height:1.5rem;padding-block:1.5rem;position:relative;font-weight:normal;display:block;margin:0}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)):where(:hover,:focus,.selected,[aria-current=page]),:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)):where(:hover,:focus,.selected,[aria-current=page]){text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-underline)}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)):active,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)):active{text-decoration-color:#a2d393 !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)).selected,:is(iam-nav,.iam-nav)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card))[aria-current=page],:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)).selected,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card))[aria-current=page]{text-decoration-color:var(--colour-info)}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)):after,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) a:not([slot=logo]):not(.btn):not(:has(iam-card)):after{content:"";display:block;height:2px;width:100% !important;top:calc(100% - 2px);background-color:var(--colour-border) !important}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) details>summary,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) details>summary{padding-right:0;background:rgba(0,0,0,0)}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) details>summary:after,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) details>summary:after{display:none}:is(iam-nav,.iam-nav)>details:not([slot=secondary]) details:not(:first-child)>summary,:is(iam-nav,.iam-nav) *:not(.nav--menu)>details:not([slot=secondary]) details:not(:first-child)>summary{margin-left:2rem}:is(iam-nav,.iam-nav) a:not([slot=logo]):not(.btn):not(:has(iam-card))[data-product][data-feature]:not([data-is-enabled=true]):before{left:.5rem}nav:has(:is(iam-nav,.iam-nav).open){min-height:100vh !important;max-height:100vh;overflow:visible;margin-bottom:calc((100vh - var(--nav-height))*-1)}html:has(:is(iam-nav,.iam-nav).open:not(.demo-open)){overflow:hidden}:is(iam-nav,.iam-nav)>details[slot=secondary]{display:inline-block;position:relative;width:auto}:is(iam-nav,.iam-nav)>details[slot=secondary] summary{display:inline-block;margin-left:1.5rem;margin-bottom:0 !important;font-size:1rem}:is(iam-nav,.iam-nav)>details[slot=secondary] summary:after{display:none}:is(iam-nav,.iam-nav)>details[slot=secondary] div{text-align:left}:is(iam-nav,.iam-nav)>details[slot=secondary] div a{white-space:nowrap;text-decoration:none;font-size:1rem !important;line-height:1.5rem !important;margin:0;padding:var(--option-padding) !important}:is(iam-nav,.iam-nav)>details[slot=secondary] div .lead{--colour-heading: var(--colour-body);color:var(--colour-body);font-size:.87rem !important;line-height:1.5rem !important;margin:0;padding:var(--option-padding) !important}:is(iam-nav,.iam-nav)>details[slot=secondary] div a:after{width:0}:is(iam-nav,.iam-nav)>details[slot=secondary] div .section:has(a:not([href=null]))+.section{border-top:1px solid var(--colour-border);display:block;padding-top:.5rem;margin-top:.5rem}:is(iam-nav,.iam-nav)>details[slot=secondary]::details-content{display:none}:is(iam-nav,.iam-nav)>details[slot=secondary][open]::details-content{display:block;background:var(--dropdown-bg);margin-block:var(--dropdown-margin-block);padding:var(--dropdown-padding);border-radius:var(--dropdown-border-radius);box-shadow:var(--dropdown-box-shadow);position:absolute;top:calc(100% + .5rem);left:1.5rem}}@media screen and (min-width: 80em){:is(iam-nav,.iam-nav).nav--large *:not(.nav--menu)>details[open]>div:not(:has(details)){columns:4;column-gap:6.875rem}}@media screen and (min-width: 62em){:is(iam-nav,.iam-nav).search-open>*:not([slot=logo]):not([slot=secondary]):not([slot=search]){display:none !important}}@media screen and (min-width: 62em){:is(iam-nav,.iam-nav):has([slot=dual]) .brand:has(~[slot=dual]){margin-right:1.5rem !important}:is(iam-nav,.iam-nav):has([slot=dual]) *:not([slot=dual]):has(+[slot=dual])+[slot=dual]{margin-left:auto !important}:is(iam-nav,.iam-nav):has([slot=dual]) .btn[slot=dual]{margin-left:0}:is(iam-nav,.iam-nav):has([slot=dual])::part(btn-menu){margin-left:1rem !important}}:is(iam-nav,.iam-nav)>.dialog__wrapper .dialog--list a{font-size:1rem}@media screen and (max-width: 62em){:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs){width:100%}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .btn-compact{display:none !important}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .dialog--list{display:contents !important}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .dialog--list a{font-size:1rem}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .dialog--list a,:is(iam-nav,.iam-nav) .btn-compact{--compact-size: 2rem;all:unset;display:block !important;font-size:.875rem !important;line-height:2rem !important;height:2rem !important;min-height:2rem !important;max-height:2rem !important;width:100% !important;margin:0 !important;cursor:pointer;color:var(--colour-link);font-weight:normal !important}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .dialog--list a:where(:hover,:focus,.selected,[aria-current=page]),:is(iam-nav,.iam-nav) .btn-compact:where(:hover,:focus,.selected,[aria-current=page]){text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-underline)}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .dialog--list a:before,:is(iam-nav,.iam-nav) .btn-compact:before{display:inline-block;width:auto;position:static;margin-right:.5rem;font-size:.875rem !important;text-decoration:none !important}:is(iam-nav,.iam-nav)>.dialog__wrapper:not(.dialog--xs) .dialog--list a:after,:is(iam-nav,.iam-nav) .btn-compact:after{display:none}}:is(iam-nav,.iam-nav) .nav--menu{outline:none !important}:is(iam-nav,.iam-nav) .nav--menu::-webkit-scrollbar{width:6px}:is(iam-nav,.iam-nav) .nav--menu::-webkit-scrollbar-track{border:0 !important}:is(iam-nav,.iam-nav) .nav--menu::-webkit-scrollbar-thumb{border:0 !important}:is(iam-nav,.iam-nav) .nav--menu hr{width:100% !important;border-top:2px solid var(--colour-border) !important}:is(iam-nav,.iam-nav) .nav--menu a{display:block !important;line-height:1.25rem !important;padding:1.5rem 0 !important;margin:0 !important}:is(iam-nav,.iam-nav) .nav--menu a:not(.mb-0):not(:has(+a)){margin:0 0 2.25rem 0 !important}:is(iam-nav,.iam-nav) .nav--menu a{flex-shrink:0;font-size:1rem !important;font-weight:normal !important}:is(iam-nav,.iam-nav) .nav--menu a:has(+a){margin-bottom:0 !important}:is(iam-nav,.iam-nav) .nav--menu a:after{content:"";display:block;height:2px;width:100% !important;background-color:var(--colour-border) !important;top:calc(100% - 2px) !important}:is(iam-nav,.iam-nav) .nav--menu>button{min-width:100%;text-align:center}/*# sourceMappingURL=assets/css/components/nav.global.css.map */
42
- </style>`)}connectedCallback(){this.hasAttribute("data-css")&&this.shadowRoot.querySelector(".doc-styles").insertAdjacentHTML("beforeend",`@import "${this.getAttribute("data-css")}";`);const i=this.shadowRoot.querySelector(".btn-menu"),a=this.shadowRoot.querySelector(".menu"),e=this,t=this.shadowRoot.querySelector(".backdrop"),r=this.shadowRoot.querySelector(".buttons-holder"),s=n=>{r==null||(r.innerHTML=""),n.querySelectorAll(":scope > *").forEach(function(o){switch(o.tagName){case"BUTTON":o.hasAttribute("slot")||(o.setAttribute("slot","actions"),a.classList.add("has-actions"));break}if(o.classList.contains("nav--menu")&&o.hasAttribute("data-title")&&o.hasAttribute("data-icon")){const d=o.getAttribute("data-title"),c=o.getAttribute("data-icon"),p=document.createElement("button");p.setAttribute("slot",d),p.classList.add("btn-menu"),p.setAttribute("part","btn-menu"),p.innerHTML=`<span class="btn btn-primary"><span>${d}</span><i class="${c}"></i><i class="fa-regular fa-xmark-large"></i></span>`,r.insertAdjacentElement("beforeend",p);const v=p.querySelector(".btn-primary");o.setAttribute("slot","menus"),o.classList.contains("open")?(p.setAttribute("aria-expanded",!0),v.classList.toggle("active"),n.classList.add("open"),t.classList.add("show")):o.classList.add("closed"),p.addEventListener("click",function(k){k.preventDefault(),p.toggleAttribute("aria-expanded"),console.log(o),o.classList.toggle("open"),v.classList.toggle("active");const b=n.querySelector(":scope > details[open]");b&&b.removeAttribute("open"),o.classList.contains("open")?(a.classList.remove("open"),i.removeAttribute("aria-expanded"),setTimeout(function(){a.classList.add("closed")},1e3),n.classList.add("open"),t.classList.add("show"),o.classList.remove("closed")):(n.classList.remove("open"),t.classList.remove("show"),setTimeout(function(){o.classList.add("closed")},1e3)),n.querySelectorAll(".nav--menu.open").forEach(function(h){h!=o&&h.classList.remove("open")}),n.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(h){h!=p&&(h.removeAttribute("aria-expanded"),h.querySelector(".btn-primary").classList.remove("active"))})},!1)}}),n.querySelectorAll("details").forEach(function(o){o.classList.add("details--revert")})};if(s(this),this.addEventListener("rebuilt",()=>{console.log("rebuilt nav"),s(this)}),this.querySelector('[slot="secondary"]')&&a.classList.add("has-secondary"),i.addEventListener("click",function(n){n.preventDefault(),a.classList.toggle("open"),e.querySelectorAll(".nav--menu.open").forEach(function(o){o.classList.remove("open"),setTimeout(function(){o.classList.add("closed")},1e3)}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(o){o.removeAttribute("aria-expanded"),o.querySelector(".btn-primary").classList.remove("active")}),a.classList.contains("open")?(e.classList.add("open"),a.classList.remove("closed")):(e.classList.remove("open"),setTimeout(function(){a.classList.add("closed")},1e3))},!1),this.addEventListener("request-close",()=>{i.removeAttribute("aria-expanded"),a.classList.remove("open"),e.classList.remove("open")}),t.addEventListener("click",()=>{const n=this.querySelector("details[open] summary");n&&n.click(),e.classList.toggle("open"),e.querySelectorAll(".nav--menu.open").forEach(function(o){o.classList.remove("open")}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(o){o.removeAttribute("aria-expanded"),o.querySelector(".btn-primary").classList.remove("active")}),t.classList.remove("show")}),this.addEventListener("click",n=>{if(n&&n.target instanceof HTMLElement&&n.target.closest("summary")&&window.innerWidth>992&&!n.target.closest(".nav--menu")){const m=n.target.closest("summary").closest("details"),d=m.parentNode;m.hasAttribute("open")?m.removeAttribute("open"):m.setAttribute("open","true"),e.querySelectorAll(".nav--menu.open").forEach(function(c){c.classList.remove("open"),setTimeout(function(){a.classList.add("closed")},1e3)}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(c){c.removeAttribute("aria-expanded"),c.querySelector(".btn-primary").classList.remove("active")}),Array.from(d.querySelectorAll(":scope > details")).forEach(c=>{c!=m&&c.removeAttribute("open")}),this.querySelectorAll(":scope > details[open]").length?(t.classList.add("show"),e.classList.add("open"),this.querySelectorAll(':scope > details[open][slot="secondary"]').length&&e.classList.add("open-secondary")):(t.classList.remove("show"),e.classList.remove("open"),e.classList.remove("open-secondary")),n.preventDefault()}}),this.querySelectorAll("details").forEach(n=>{const o=n.querySelector("summary");n.querySelector(":Scope > div").setAttribute("data-title",o.textContent)}),this.querySelector('[slot="search"]')){a.classList.add("has-search");const n=this.shadowRoot.querySelector("#search-wrapper");n.classList.remove("d-none"),n.insertAdjacentHTML("afterbegin",`<button class="btn btn-secondary btn-compact fa-search me-0 mb-0" id="search-button" aria-controls="search-dialog">Open Search field</button>
42
+ </style>`)}connectedCallback(){this.hasAttribute("data-css")&&this.shadowRoot.querySelector(".doc-styles").insertAdjacentHTML("beforeend",`@import "${this.getAttribute("data-css")}";`);const i=this.shadowRoot.querySelector(".btn-menu"),a=this.shadowRoot.querySelector(".menu"),e=this,t=this.shadowRoot.querySelector(".backdrop"),r=this.shadowRoot.querySelector(".buttons-holder"),s=n=>{r.innerHTML="",n.querySelectorAll(":scope > *").forEach(function(o){if(o.tagName==="BUTTON"&&(o.hasAttribute("slot")||(o.setAttribute("slot","actions"),a.classList.add("has-actions"))),o.classList.contains("nav--menu")&&o.hasAttribute("data-title")&&o.hasAttribute("data-icon")){const d=o.getAttribute("data-title"),c=o.getAttribute("data-icon"),p=document.createElement("button");p.setAttribute("slot",d),p.classList.add("btn-menu"),p.setAttribute("part","btn-menu"),p.innerHTML=`<span class="btn btn-primary"><span>${d}</span><i class="${c}"></i><i class="fa-regular fa-xmark-large"></i></span>`,r.insertAdjacentElement("beforeend",p);const v=p.querySelector(".btn-primary");o.setAttribute("slot","menus"),o.classList.contains("open")?(p.setAttribute("aria-expanded",!0),v.classList.toggle("active"),n.classList.add("open"),t.classList.add("show")):o.classList.add("closed"),p.addEventListener("click",function(k){k.preventDefault(),p.toggleAttribute("aria-expanded"),console.log(o),o.classList.toggle("open"),v.classList.toggle("active");const b=n.querySelector(":scope > details[open]");b&&b.removeAttribute("open"),o.classList.contains("open")?(a.classList.remove("open"),i.removeAttribute("aria-expanded"),setTimeout(function(){a.classList.add("closed")},1e3),n.classList.add("open"),t.classList.add("show"),o.classList.remove("closed")):(n.classList.remove("open"),t.classList.remove("show"),setTimeout(function(){o.classList.add("closed")},1e3)),n.querySelectorAll(".nav--menu.open").forEach(function(h){h!=o&&h.classList.remove("open")}),n.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(h){h!=p&&(h.removeAttribute("aria-expanded"),h.querySelector(".btn-primary").classList.remove("active"))})},!1)}}),n.querySelectorAll("details").forEach(function(o){o.classList.add("details--revert")})};if(s(this),this.addEventListener("rebuilt",()=>{console.log("rebuilt nav"),s(this)}),this.querySelector('[slot="secondary"]')&&a.classList.add("has-secondary"),i.addEventListener("click",function(n){n.preventDefault(),a.classList.toggle("open"),e.querySelectorAll(".nav--menu.open").forEach(function(o){o.classList.remove("open"),setTimeout(function(){o.classList.add("closed")},1e3)}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(o){o.removeAttribute("aria-expanded"),o.querySelector(".btn-primary").classList.remove("active")}),a.classList.contains("open")?(e.classList.add("open"),a.classList.remove("closed")):(e.classList.remove("open"),setTimeout(function(){a.classList.add("closed")},1e3))},!1),this.addEventListener("request-close",()=>{i.removeAttribute("aria-expanded"),a.classList.remove("open"),e.classList.remove("open")}),t.addEventListener("click",()=>{const n=this.querySelector("details[open] summary");n&&n.click(),e.classList.toggle("open"),e.querySelectorAll(".nav--menu.open").forEach(function(o){o.classList.remove("open")}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(o){o.removeAttribute("aria-expanded"),o.querySelector(".btn-primary").classList.remove("active")}),t.classList.remove("show")}),this.addEventListener("click",n=>{if(n&&n.target instanceof HTMLElement&&n.target.closest("summary")&&window.innerWidth>992&&!n.target.closest(".nav--menu")){const m=n.target.closest("summary").closest("details"),d=m.parentNode;m.hasAttribute("open")?m.removeAttribute("open"):m.setAttribute("open","true"),e.querySelectorAll(".nav--menu.open").forEach(function(c){c.classList.remove("open"),setTimeout(function(){a.classList.add("closed")},1e3)}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(c){c.removeAttribute("aria-expanded"),c.querySelector(".btn-primary").classList.remove("active")}),Array.from(d.querySelectorAll(":scope > details")).forEach(c=>{c!=m&&c.removeAttribute("open")}),this.querySelectorAll(":scope > details[open]").length?(t.classList.add("show"),e.classList.add("open"),this.querySelectorAll(':scope > details[open][slot="secondary"]').length&&e.classList.add("open-secondary")):(t.classList.remove("show"),e.classList.remove("open"),e.classList.remove("open-secondary")),n.preventDefault()}}),this.querySelectorAll("details").forEach(n=>{const o=n.querySelector("summary");n.querySelector(":Scope > div").setAttribute("data-title",o.textContent)}),this.querySelector('[slot="search"]')){a.classList.add("has-search");const n=this.shadowRoot.querySelector("#search-wrapper");n.classList.remove("d-none"),n.insertAdjacentHTML("afterbegin",`<button class="btn btn-secondary btn-compact fa-search me-0 mb-0" id="search-button" aria-controls="search-dialog">Open Search field</button>
43
43
  <dialog id="search-dialog">
44
44
  <div class="container">
45
45
  <div class="row">
@@ -1 +1 @@
1
- {"version":3,"file":"std-nav.component.min.js","sources":["../../../../node_modules/js-cookie/dist/js.cookie.mjs","../../modules/nav.js","../nav/nav.component.js","std-nav.component.js"],"sourcesContent":["/*! js-cookie v3.0.7 | MIT */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (key === '__proto__') continue\n target[key] = source[key];\n }\n }\n return target\n}\n\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n\nfunction init(converter, defaultAttributes) {\n function set(name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get(name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n if (!(found in jar)) jar[found] = converter.read(value, found);\n if (name === found) {\n break\n }\n } catch {\n // Do nothing...\n }\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n\nexport { api as default };\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nconst navbar = (element) => {\n Array.from(element.querySelectorAll('details')).forEach((detail) => {\n detail.addEventListener('mouseenter', function () {\n if (window.matchMedia('(min-width: 62em)').matches)\n detail.setAttribute('open', 'true');\n }, false);\n detail.addEventListener('mouseleave', function () {\n if (window.matchMedia('(min-width: 62em)').matches)\n detail.removeAttribute('open');\n }, false);\n });\n if ('IntersectionObserver' in window) {\n const observer = new IntersectionObserver(([e]) => e.target.classList.toggle('is-stuck', e.intersectionRatio < 1), {\n threshold: [1],\n });\n observer.observe(element);\n }\n};\nexport const populateNav = (data) => {\n let html = ``;\n data.forEach((feature) => {\n if (feature.attributes.sections.length)\n html += `<details name=\"megamenu\"><summary>${feature.attributes.title}</summary><div data-title=\"${feature.attributes.title}\">${populateSections(feature.attributes.sections)}</div></details>`;\n else if (feature.attributes.links)\n html += `<details name=\"megamenu\"><summary>${feature.attributes.title}</summary><div data-title=\"${feature.attributes.title}\">${populateLinks(feature.attributes.links)}</div></details>`;\n else\n html += `<a href=\"/\">${feature.attributes.title}</a>`;\n });\n return html;\n};\nexport const populateSections = (data) => {\n let html = ``;\n data.forEach((section) => {\n html += `<span class=\"section section--${section.layout}\">\n ${section.title ? `<span class=\"lead section-title\" data-product=\"${section.id}\" data-title>${section.title}:</span>` : ''}\n ${section.description ? `<span class=\"lead section-desc\" data-product=\"${section.id}\"><i class=\"fa-solid fa-sparkles colour-warning\"></i> ${section.description}</span>` : ''}\n ${populateLinks(section.links)}\n </span>`;\n });\n return html;\n};\nexport const populateLinks = (data) => {\n let html = ``;\n data.forEach((link) => {\n html += `<a href=\"${link.destinations.unlinked}\" target=\"_blank\" data-product=\"${link.productKey}\" data-feature=\"${link.featureKey}\" data-enabled=\"${link.destinations.linkedEnabled}\" data-disabled=\"${link.destinations.linkedDisabled}\">${link.title}</a>`;\n });\n return html;\n};\nexport const loadNavData = (Cookies) => __awaiter(void 0, void 0, void 0, function* () {\n const ajaxURL = 'https://dev.hub.iamproperty.group/data/ecosystem-switcher.json';\n //const ajaxURL = '/nav.json';\n // Setup controller vars if not already set\n if (!window.controller)\n window.controller = [];\n // Abort if controller already present for this url\n if (window.controller[ajaxURL])\n window.controller[ajaxURL].abort();\n // Create a new controller so it can be aborted if new fetch made\n window.controller[ajaxURL] = new AbortController();\n const { signal } = window.controller[ajaxURL];\n try {\n const response = yield fetch(ajaxURL, {\n signal,\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n });\n const json = yield response.json();\n const data = json.data ? json.data : json;\n return data;\n }\n catch (error) {\n if ((error === null || error === void 0 ? void 0 : error.name) === 'AbortError') {\n return true;\n }\n console.log(error);\n return 'There has been a problem. Please try again in a few moments.';\n }\n});\nexport const loadUserData = (Cookies) => __awaiter(void 0, void 0, void 0, function* () {\n const ajaxURL = '/user.json';\n // Setup controller vars if not already set\n if (!window.controller)\n window.controller = [];\n // Abort if controller already present for this url\n if (window.controller[ajaxURL])\n window.controller[ajaxURL].abort();\n // Create a new controller so it can be aborted if new fetch made\n window.controller[ajaxURL] = new AbortController();\n const { signal } = window.controller[ajaxURL];\n try {\n const response = yield fetch(ajaxURL, {\n signal,\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n });\n const json = yield response.json();\n const data = json.data ? json.data : json;\n return data;\n }\n catch (error) {\n if ((error === null || error === void 0 ? void 0 : error.name) === 'AbortError') {\n return true;\n }\n console.log(error);\n return 'There has been a problem. Please try again in a few moments.';\n }\n});\nexport const setEnabledLinks = (component, data) => {\n const selector = `[data-product][data-feature]`;\n const elements = component\n ? [\n ...component.querySelectorAll(selector),\n ...(component.shadowRoot ? component.shadowRoot.querySelectorAll(selector) : []),\n ]\n : document.querySelectorAll(`iam-nav ${selector}`);\n elements.forEach((element) => {\n const isEnabled = data.attributes.products[element.getAttribute('data-product')].features[element.getAttribute('data-feature')];\n element.setAttribute('data-is-enabled', isEnabled);\n if (isEnabled && element.getAttribute('data-enabled')) {\n element.setAttribute('href', element.getAttribute('data-enabled'));\n element.removeAttribute('target');\n }\n });\n};\nexport default navbar;\n","// Data layer Web component created\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n event: 'customElementRegistered',\n element: 'nav',\n});\nclass iamNav extends HTMLElement {\n constructor() {\n super();\n const shadowRoot = this.attachShadow({ mode: 'open' });\n const assetLocation = document.body.hasAttribute('data-assets-location')\n ? document.body.getAttribute('data-assets-location')\n : '/assets';\n const loadCSS = `@import \"${assetLocation}/css/components/nav.component.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/nav.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\n <style class=\"styles\">\n\n ${loadCSS}\n </style>\n <style class=\"doc-styles\">\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/8bd0fca975.css\" crossorigin=\"anonymous\">\n <div class=\"container\">\n <slot name=\"logo\"></slot>\n <div class=\"buttons-holder\"></div>\n <button class=\"btn-menu\" part=\"btn-menu\">Menu<i class=\"fa-regular fa-bars\"></i><i class=\"fa-regular fa-xmark-large\"></i></button>\n\n <div class=\"menu__outer\">\n <div class=\"menu closed\">\n\n <div class=\"menu__primary\">\n <slot></slot>\n <slot name=\"dual\"></slot>\n </div>\n <div class=\"dialog__wrapper d-none\" id=\"search-wrapper\"></div>\n <slot name=\"actions\"></slot>\n <div class=\"menu__secondary bg-light\">\n <div class=\"container\">\n <slot name=\"secondary\"></slot>\n </div>\n </div>\n </div>\n <slot name=\"menus\"></slot>\n </div>\n </div>\n <div class=\"backdrop\" part=\"backdrop\"></div>\n `;\n shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('navGlobal'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"navGlobal\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n // Load external CSS if needed\n if (this.hasAttribute('data-css'))\n this.shadowRoot\n .querySelector('.doc-styles')\n .insertAdjacentHTML('beforeend', `@import \"${this.getAttribute('data-css')}\";`);\n const menuButton = this.shadowRoot.querySelector('.btn-menu');\n const menu = this.shadowRoot.querySelector('.menu');\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const iamNav = this;\n const backdrop = this.shadowRoot.querySelector('.backdrop');\n const buttonsHolder = this.shadowRoot.querySelector('.buttons-holder');\n // Check the content\n const createNavMenu = (component) => {\n buttonsHolder === null || buttonsHolder === void 0 ? void 0 : buttonsHolder.innerHTML = '';\n component.querySelectorAll(':scope > *').forEach(function (element) {\n const tagname = element.tagName;\n switch (tagname) {\n case 'BUTTON':\n if (!element.hasAttribute('slot')) {\n element.setAttribute('slot', 'actions');\n menu.classList.add('has-actions');\n }\n break;\n }\n // Create menu button\n if (element.classList.contains('nav--menu') &&\n element.hasAttribute('data-title') &&\n element.hasAttribute('data-icon')) {\n const title = element.getAttribute('data-title');\n const iconClass = element.getAttribute('data-icon');\n // Create the menu button that sits seperately to the menu\n const button = document.createElement('button');\n button.setAttribute('slot', title);\n button.classList.add('btn-menu');\n button.setAttribute('part', 'btn-menu');\n button.innerHTML = `<span class=\"btn btn-primary\"><span>${title}</span><i class=\"${iconClass}\"></i><i class=\"fa-regular fa-xmark-large\"></i></span>`;\n buttonsHolder.insertAdjacentElement('beforeend', button);\n const mdButton = button.querySelector('.btn-primary');\n // Make sure the menu is added to the right part of the component\n element.setAttribute('slot', 'menus');\n // If open we need to make sure the main mobile menu is closed, the new button has the right state and the backdrop is shown\n if (element.classList.contains('open')) {\n button.setAttribute('aria-expanded', true);\n mdButton.classList.toggle('active');\n component.classList.add('open');\n backdrop.classList.add('show');\n }\n else {\n element.classList.add('closed'); // closed class is added to prevent the elements being tabbed into, this causes visual issues\n }\n // Click event\n button.addEventListener('click', function (e) {\n e.preventDefault();\n button.toggleAttribute('aria-expanded');\n console.log(element);\n element.classList.toggle('open');\n mdButton.classList.toggle('active');\n // Close desktop menus\n const openMenu = component.querySelector(':scope > details[open]');\n if (openMenu)\n openMenu.removeAttribute('open');\n // Close the main menu and fix states on the button, iamNav component and backdrop\n if (element.classList.contains('open')) {\n menu.classList.remove('open');\n menuButton.removeAttribute('aria-expanded');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000); // Delay until its close so the animation is broken\n component.classList.add('open');\n backdrop.classList.add('show');\n element.classList.remove('closed');\n }\n else {\n component.classList.remove('open');\n backdrop.classList.remove('show');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n }\n // Close any open menus\n component.querySelectorAll('.nav--menu.open').forEach(function (openmenu) {\n if (openmenu != element) {\n openmenu.classList.remove('open');\n }\n });\n component.shadowRoot\n .querySelectorAll('.buttons-holder .btn-menu[aria-expanded]')\n .forEach(function (selectedButton) {\n if (selectedButton != button) {\n selectedButton.removeAttribute('aria-expanded');\n const innerBtn = selectedButton.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n }\n });\n }, false);\n }\n });\n component.querySelectorAll('details').forEach(function (element) {\n element.classList.add('details--revert');\n });\n };\n createNavMenu(this);\n this.addEventListener('rebuilt', () => {\n console.log('rebuilt nav');\n createNavMenu(this);\n });\n // Has secondary link\n if (this.querySelector('[slot=\"secondary\"]')) {\n menu.classList.add('has-secondary');\n }\n // Open and close the menu\n menuButton.addEventListener('click', function (e) {\n e.preventDefault();\n //menuButton.toggleAttribute('aria-expanded');\n menu.classList.toggle('open');\n // Close any other menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n if (menu.classList.contains('open')) {\n iamNav.classList.add('open');\n menu.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n }\n }, false);\n // Allow outside JS to close the menu\n this.addEventListener('request-close', () => {\n menuButton.removeAttribute('aria-expanded');\n menu.classList.remove('open');\n iamNav.classList.remove('open');\n });\n // Close the menu on the click of the backdrop on desktop\n backdrop.addEventListener('click', () => {\n const openMenu = this.querySelector('details[open] summary');\n if (openMenu)\n openMenu.click();\n iamNav.classList.toggle('open');\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n backdrop.classList.remove('show');\n });\n // On desktop close other menu's (details) when one is clicked\n this.addEventListener('click', (event) => {\n if (event && event.target instanceof HTMLElement && event.target.closest('summary')) {\n if (window.innerWidth > 992 && !event.target.closest('.nav--menu')) {\n const summary = event.target.closest('summary');\n const details = summary.closest('details');\n const wrapper = details.parentNode;\n if (details.hasAttribute('open'))\n details.removeAttribute('open');\n else\n details.setAttribute('open', 'true');\n // Close any bespoke menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n // Close any other dropdowns on the same level\n Array.from(wrapper.querySelectorAll(':scope > details')).forEach((detailsArrayElement) => {\n if (detailsArrayElement != details)\n detailsArrayElement.removeAttribute('open');\n });\n if (this.querySelectorAll(':scope > details[open]').length) {\n backdrop.classList.add('show');\n iamNav.classList.add('open');\n if (this.querySelectorAll(':scope > details[open][slot=\"secondary\"]').length)\n iamNav.classList.add('open-secondary');\n }\n else {\n backdrop.classList.remove('show');\n iamNav.classList.remove('open');\n iamNav.classList.remove('open-secondary');\n }\n event.preventDefault();\n }\n }\n });\n // Mega menu title\n this.querySelectorAll('details').forEach((detailsElement) => {\n const summary = detailsElement.querySelector('summary');\n const containerDiv = detailsElement.querySelector(':Scope > div');\n containerDiv.setAttribute('data-title', summary.textContent);\n });\n // Search\n if (this.querySelector('[slot=\"search\"]')) {\n menu.classList.add('has-search');\n const searchWrapper = this.shadowRoot.querySelector('#search-wrapper');\n searchWrapper.classList.remove('d-none');\n searchWrapper.insertAdjacentHTML('afterbegin', `<button class=\"btn btn-secondary btn-compact fa-search me-0 mb-0\" id=\"search-button\" aria-controls=\"search-dialog\">Open Search field</button>\n <dialog id=\"search-dialog\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col mb-0 ms-auto col-md-7\">\n <slot name=\"search\"></slot>\n </div>\n <div class=\"col d-none d-md-block mw-fit-content ms-3\">\n <button class=\"btn btn-compact btn-secondary fa-xmark-large m-0 mb-0\" type=\"button\" id=\"search-close\">Close search field</button>\n </div>\n </div>\n </div>\n </dialog>`);\n const searchButton = this.shadowRoot.querySelector('#search-button');\n const searchClose = this.shadowRoot.querySelector('#search-close');\n const searchDialog = this.shadowRoot.querySelector('#search-dialog');\n if (this.hasAttribute('data-search-open')) {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n }\n searchButton.addEventListener('click', () => {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n });\n searchClose.addEventListener('click', () => {\n searchDialog.removeAttribute('open');\n this.classList.remove('search-open');\n searchButton.removeAttribute('aria-expanded');\n });\n }\n if (this.classList.contains('nav--sticky')) {\n let oldScrollY = window.scrollY;\n window.onscroll = function (e) {\n if (oldScrollY < window.scrollY) {\n document.body.setAttribute('data-direction', 'down');\n }\n else {\n document.body.setAttribute('data-direction', 'up');\n }\n if (window.scrollY > 100) {\n document.body.classList.add('past100');\n }\n else {\n document.body.classList.remove('past100');\n }\n oldScrollY = window.scrollY;\n };\n }\n }\n}\nexport default iamNav;\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Cookies from '../../../../node_modules/js-cookie/dist/js.cookie.mjs';\nimport { populateNav, loadNavData, loadUserData, setEnabledLinks } from '../../modules/nav';\nimport iamNav from '../nav/nav.component';\nclass iamSTDNav extends HTMLElement {\n constructor() {\n super();\n this.defaultToNav = () => {\n const defaultContent = this.innerHTML;\n this.innerHTML = `<iam-nav ${(this.hasAttribute('class') ? `class=\"${this.getAttribute('class')}\"` : '')}>\n ${defaultContent}\n </iam-nav>`;\n };\n this.transformToNav = (data) => {\n var _a;\n const navElement = (_a = this.querySelector('iam-nav')) !== null && _a !== void 0 ? _a : this;\n // Remove current links\n navElement.querySelectorAll(`:scope > *`).forEach((element) => {\n if (!element.hasAttribute('slot'))\n element.remove();\n });\n const defaultContent = navElement.innerHTML;\n navElement.innerHTML = `${defaultContent}${populateNav(data)}`;\n const customEvent = new CustomEvent('rebuilt');\n navElement.dispatchEvent(customEvent);\n };\n this.defaultToSecondary = () => {\n // Set links and details to secondary slot\n Array.from(this.querySelectorAll(':scope > a, :scope > details')).forEach((element) => {\n element.setAttribute('slot', 'secondary');\n });\n const defaultContent = this.innerHTML;\n this.outerHTML = `${defaultContent}`;\n };\n this.transformToSecondary = (data) => {\n this.innerHTML = populateNav(data);\n // Set links and details to secondary slot\n Array.from(this.querySelectorAll(':scope > a, :scope > details')).forEach((element) => {\n element.setAttribute('slot', 'secondary');\n });\n const defaultContent = this.innerHTML;\n this.outerHTML = `${defaultContent}`;\n };\n }\n connectedCallback() {\n return __awaiter(this, void 0, void 0, function* () {\n var _a, _b;\n const component = this;\n this.wrapper = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.wrapper');\n if (!window.customElements.get(`iam-nav`))\n window.customElements.define(`iam-nav`, iamNav);\n if (this.hasAttribute('data-hub')) {\n this.defaultToNav();\n (_b = this.querySelector('.nav--menu.js-show')) === null || _b === void 0 ? void 0 : _b.classList.remove('js-show');\n }\n else {\n //this.defaultToSecondary(); TODO: change this to show default content but still be able to update\n }\n const data = yield loadNavData(Cookies).then((data) => {\n if (typeof data == 'string') {\n return data;\n }\n //console.log(data);\n if (this.hasAttribute('data-hub')) {\n const filteredData = data.filter(section => section.attributes.title != \"Learning and support\");\n this.transformToNav(filteredData);\n }\n else {\n this.transformToSecondary(data);\n }\n return true;\n });\n const userData = yield loadUserData(Cookies).then((data) => {\n setEnabledLinks(component, data);\n Array.from(document.querySelectorAll('[data-variable]')).forEach((element) => {\n if (data.attributes[element.getAttribute('data-variable')])\n element.innerHTML = data.attributes[element.getAttribute('data-variable')];\n });\n Array.from(document.querySelectorAll('[data-save-variable]')).forEach((element) => {\n //console.log(element);\n if (data.attributes[element.getAttribute('data-save-variable')])\n element.setAttribute('data-variable-value', data.attributes[element.getAttribute('data-save-variable')]);\n });\n return true;\n });\n });\n }\n}\nexport default iamSTDNav;\n"],"names":["assign","target","source","key","defaultConverter","value","init","converter","defaultAttributes","set","name","attributes","stringifiedAttributes","attributeName","get","cookies","jar","i","parts","found","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","reject","fulfilled","step","e","rejected","result","populateNav","data","html","feature","populateSections","populateLinks","section","link","loadNavData","Cookies","ajaxURL","signal","json","error","loadUserData","setEnabledLinks","component","selector","element","isEnabled","iamNav","shadowRoot","template","menuButton","menu","backdrop","buttonsHolder","createNavMenu","title","iconClass","button","mdButton","openMenu","openmenu","selectedButton","event","details","wrapper","detailsArrayElement","detailsElement","summary","searchWrapper","searchButton","searchClose","searchDialog","oldScrollY","iamSTDNav","defaultContent","_a","navElement","customEvent","_b","filteredData"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"std-nav.component.min.js","sources":["../../../../node_modules/js-cookie/dist/js.cookie.mjs","../../modules/nav.js","../nav/nav.component.js","std-nav.component.js"],"sourcesContent":["/*! js-cookie v3.0.7 | MIT */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (key === '__proto__') continue\n target[key] = source[key];\n }\n }\n return target\n}\n\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n\nfunction init(converter, defaultAttributes) {\n function set(name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get(name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n if (!(found in jar)) jar[found] = converter.read(value, found);\n if (name === found) {\n break\n }\n } catch {\n // Do nothing...\n }\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n\nexport { api as default };\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nconst navbar = (element) => {\n Array.from(element.querySelectorAll('details')).forEach((detail) => {\n detail.addEventListener('mouseenter', function () {\n if (window.matchMedia('(min-width: 62em)').matches)\n detail.setAttribute('open', 'true');\n }, false);\n detail.addEventListener('mouseleave', function () {\n if (window.matchMedia('(min-width: 62em)').matches)\n detail.removeAttribute('open');\n }, false);\n });\n if ('IntersectionObserver' in window) {\n const observer = new IntersectionObserver(([e]) => e.target.classList.toggle('is-stuck', e.intersectionRatio < 1), {\n threshold: [1],\n });\n observer.observe(element);\n }\n};\nexport const populateNav = (data) => {\n let html = ``;\n data.forEach((feature) => {\n if (feature.attributes.sections.length)\n html += `<details name=\"megamenu\"><summary>${feature.attributes.title}</summary><div data-title=\"${feature.attributes.title}\">${populateSections(feature.attributes.sections)}</div></details>`;\n else if (feature.attributes.links)\n html += `<details name=\"megamenu\"><summary>${feature.attributes.title}</summary><div data-title=\"${feature.attributes.title}\">${populateLinks(feature.attributes.links)}</div></details>`;\n else\n html += `<a href=\"/\">${feature.attributes.title}</a>`;\n });\n return html;\n};\nexport const populateSections = (data) => {\n let html = ``;\n data.forEach((section) => {\n html += `<span class=\"section section--${section.layout}\">\n ${section.title ? `<span class=\"lead section-title\" data-product=\"${section.id}\" data-title>${section.title}:</span>` : ''}\n ${section.description ? `<span class=\"lead section-desc\" data-product=\"${section.id}\"><i class=\"fa-solid fa-sparkles colour-warning\"></i> ${section.description}</span>` : ''}\n ${populateLinks(section.links)}\n </span>`;\n });\n return html;\n};\nexport const populateLinks = (data) => {\n let html = ``;\n data.forEach((link) => {\n html += `<a href=\"${link.destinations.unlinked}\" target=\"_blank\" data-product=\"${link.productKey}\" data-feature=\"${link.featureKey}\" data-enabled=\"${link.destinations.linkedEnabled}\" data-disabled=\"${link.destinations.linkedDisabled}\">${link.title}</a>`;\n });\n return html;\n};\nexport const loadNavData = (Cookies) => __awaiter(void 0, void 0, void 0, function* () {\n const ajaxURL = 'https://dev.hub.iamproperty.group/data/ecosystem-switcher.json';\n //const ajaxURL = '/nav.json';\n // Setup controller vars if not already set\n if (!window.controller)\n window.controller = [];\n // Abort if controller already present for this url\n if (window.controller[ajaxURL])\n window.controller[ajaxURL].abort();\n // Create a new controller so it can be aborted if new fetch made\n window.controller[ajaxURL] = new AbortController();\n const { signal } = window.controller[ajaxURL];\n try {\n const response = yield fetch(ajaxURL, {\n signal,\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n });\n const json = yield response.json();\n const data = json.data ? json.data : json;\n return data;\n }\n catch (error) {\n if ((error === null || error === void 0 ? void 0 : error.name) === 'AbortError') {\n return true;\n }\n console.log(error);\n return 'There has been a problem. Please try again in a few moments.';\n }\n});\nexport const loadUserData = (Cookies) => __awaiter(void 0, void 0, void 0, function* () {\n const ajaxURL = '/user.json';\n // Setup controller vars if not already set\n if (!window.controller)\n window.controller = [];\n // Abort if controller already present for this url\n if (window.controller[ajaxURL])\n window.controller[ajaxURL].abort();\n // Create a new controller so it can be aborted if new fetch made\n window.controller[ajaxURL] = new AbortController();\n const { signal } = window.controller[ajaxURL];\n try {\n const response = yield fetch(ajaxURL, {\n signal,\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n });\n const json = yield response.json();\n const data = json.data ? json.data : json;\n return data;\n }\n catch (error) {\n if ((error === null || error === void 0 ? void 0 : error.name) === 'AbortError') {\n return true;\n }\n console.log(error);\n return 'There has been a problem. Please try again in a few moments.';\n }\n});\nexport const setEnabledLinks = (component, data) => {\n const selector = `[data-product][data-feature]`;\n const elements = component\n ? [\n ...component.querySelectorAll(selector),\n ...(component.shadowRoot ? component.shadowRoot.querySelectorAll(selector) : []),\n ]\n : document.querySelectorAll(`iam-nav ${selector}`);\n elements.forEach((element) => {\n const isEnabled = data.attributes.products[element.getAttribute('data-product')].features[element.getAttribute('data-feature')];\n element.setAttribute('data-is-enabled', isEnabled);\n if (isEnabled && element.getAttribute('data-enabled')) {\n element.setAttribute('href', element.getAttribute('data-enabled'));\n element.removeAttribute('target');\n }\n });\n};\nexport default navbar;\n","// Data layer Web component created\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n event: 'customElementRegistered',\n element: 'nav',\n});\nclass iamNav extends HTMLElement {\n constructor() {\n super();\n const shadowRoot = this.attachShadow({ mode: 'open' });\n const assetLocation = document.body.hasAttribute('data-assets-location')\n ? document.body.getAttribute('data-assets-location')\n : '/assets';\n const loadCSS = `@import \"${assetLocation}/css/components/nav.component.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/nav.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\n <style class=\"styles\">\n\n ${loadCSS}\n </style>\n <style class=\"doc-styles\">\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/8bd0fca975.css\" crossorigin=\"anonymous\">\n <div class=\"container\">\n <slot name=\"logo\"></slot>\n <div class=\"buttons-holder\"></div>\n <button class=\"btn-menu\" part=\"btn-menu\">Menu<i class=\"fa-regular fa-bars\"></i><i class=\"fa-regular fa-xmark-large\"></i></button>\n\n <div class=\"menu__outer\">\n <div class=\"menu closed\">\n\n <div class=\"menu__primary\">\n <slot></slot>\n <slot name=\"dual\"></slot>\n </div>\n <div class=\"dialog__wrapper d-none\" id=\"search-wrapper\"></div>\n <slot name=\"actions\"></slot>\n <div class=\"menu__secondary bg-light\">\n <div class=\"container\">\n <slot name=\"secondary\"></slot>\n </div>\n </div>\n </div>\n <slot name=\"menus\"></slot>\n </div>\n </div>\n <div class=\"backdrop\" part=\"backdrop\"></div>\n `;\n shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('navGlobal'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"navGlobal\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n // Load external CSS if needed\n if (this.hasAttribute('data-css'))\n this.shadowRoot\n .querySelector('.doc-styles')\n .insertAdjacentHTML('beforeend', `@import \"${this.getAttribute('data-css')}\";`);\n const menuButton = this.shadowRoot.querySelector('.btn-menu');\n const menu = this.shadowRoot.querySelector('.menu');\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const iamNav = this;\n const backdrop = this.shadowRoot.querySelector('.backdrop');\n const buttonsHolder = this.shadowRoot.querySelector('.buttons-holder');\n // Check the content\n const createNavMenu = (component) => {\n buttonsHolder.innerHTML = '';\n component.querySelectorAll(':scope > *').forEach(function (element) {\n const tagname = element.tagName;\n switch (tagname) {\n case 'BUTTON':\n if (!element.hasAttribute('slot')) {\n element.setAttribute('slot', 'actions');\n menu.classList.add('has-actions');\n }\n break;\n }\n // Create menu button\n if (element.classList.contains('nav--menu') &&\n element.hasAttribute('data-title') &&\n element.hasAttribute('data-icon')) {\n const title = element.getAttribute('data-title');\n const iconClass = element.getAttribute('data-icon');\n // Create the menu button that sits seperately to the menu\n const button = document.createElement('button');\n button.setAttribute('slot', title);\n button.classList.add('btn-menu');\n button.setAttribute('part', 'btn-menu');\n button.innerHTML = `<span class=\"btn btn-primary\"><span>${title}</span><i class=\"${iconClass}\"></i><i class=\"fa-regular fa-xmark-large\"></i></span>`;\n buttonsHolder.insertAdjacentElement('beforeend', button);\n const mdButton = button.querySelector('.btn-primary');\n // Make sure the menu is added to the right part of the component\n element.setAttribute('slot', 'menus');\n // If open we need to make sure the main mobile menu is closed, the new button has the right state and the backdrop is shown\n if (element.classList.contains('open')) {\n button.setAttribute('aria-expanded', true);\n mdButton.classList.toggle('active');\n component.classList.add('open');\n backdrop.classList.add('show');\n }\n else {\n element.classList.add('closed'); // closed class is added to prevent the elements being tabbed into, this causes visual issues\n }\n // Click event\n button.addEventListener('click', function (e) {\n e.preventDefault();\n button.toggleAttribute('aria-expanded');\n console.log(element);\n element.classList.toggle('open');\n mdButton.classList.toggle('active');\n // Close desktop menus\n const openMenu = component.querySelector(':scope > details[open]');\n if (openMenu)\n openMenu.removeAttribute('open');\n // Close the main menu and fix states on the button, iamNav component and backdrop\n if (element.classList.contains('open')) {\n menu.classList.remove('open');\n menuButton.removeAttribute('aria-expanded');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000); // Delay until its close so the animation is broken\n component.classList.add('open');\n backdrop.classList.add('show');\n element.classList.remove('closed');\n }\n else {\n component.classList.remove('open');\n backdrop.classList.remove('show');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n }\n // Close any open menus\n component.querySelectorAll('.nav--menu.open').forEach(function (openmenu) {\n if (openmenu != element) {\n openmenu.classList.remove('open');\n }\n });\n component.shadowRoot\n .querySelectorAll('.buttons-holder .btn-menu[aria-expanded]')\n .forEach(function (selectedButton) {\n if (selectedButton != button) {\n selectedButton.removeAttribute('aria-expanded');\n const innerBtn = selectedButton.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n }\n });\n }, false);\n }\n });\n component.querySelectorAll('details').forEach(function (element) {\n element.classList.add('details--revert');\n });\n };\n createNavMenu(this);\n this.addEventListener('rebuilt', () => {\n console.log('rebuilt nav');\n createNavMenu(this);\n });\n // Has secondary link\n if (this.querySelector('[slot=\"secondary\"]')) {\n menu.classList.add('has-secondary');\n }\n // Open and close the menu\n menuButton.addEventListener('click', function (e) {\n e.preventDefault();\n //menuButton.toggleAttribute('aria-expanded');\n menu.classList.toggle('open');\n // Close any other menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n if (menu.classList.contains('open')) {\n iamNav.classList.add('open');\n menu.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n }\n }, false);\n // Allow outside JS to close the menu\n this.addEventListener('request-close', () => {\n menuButton.removeAttribute('aria-expanded');\n menu.classList.remove('open');\n iamNav.classList.remove('open');\n });\n // Close the menu on the click of the backdrop on desktop\n backdrop.addEventListener('click', () => {\n const openMenu = this.querySelector('details[open] summary');\n if (openMenu)\n openMenu.click();\n iamNav.classList.toggle('open');\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n backdrop.classList.remove('show');\n });\n // On desktop close other menu's (details) when one is clicked\n this.addEventListener('click', (event) => {\n if (event && event.target instanceof HTMLElement && event.target.closest('summary')) {\n if (window.innerWidth > 992 && !event.target.closest('.nav--menu')) {\n const summary = event.target.closest('summary');\n const details = summary.closest('details');\n const wrapper = details.parentNode;\n if (details.hasAttribute('open'))\n details.removeAttribute('open');\n else\n details.setAttribute('open', 'true');\n // Close any bespoke menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n // Close any other dropdowns on the same level\n Array.from(wrapper.querySelectorAll(':scope > details')).forEach((detailsArrayElement) => {\n if (detailsArrayElement != details)\n detailsArrayElement.removeAttribute('open');\n });\n if (this.querySelectorAll(':scope > details[open]').length) {\n backdrop.classList.add('show');\n iamNav.classList.add('open');\n if (this.querySelectorAll(':scope > details[open][slot=\"secondary\"]').length)\n iamNav.classList.add('open-secondary');\n }\n else {\n backdrop.classList.remove('show');\n iamNav.classList.remove('open');\n iamNav.classList.remove('open-secondary');\n }\n event.preventDefault();\n }\n }\n });\n // Mega menu title\n this.querySelectorAll('details').forEach((detailsElement) => {\n const summary = detailsElement.querySelector('summary');\n const containerDiv = detailsElement.querySelector(':Scope > div');\n containerDiv.setAttribute('data-title', summary.textContent);\n });\n // Search\n if (this.querySelector('[slot=\"search\"]')) {\n menu.classList.add('has-search');\n const searchWrapper = this.shadowRoot.querySelector('#search-wrapper');\n searchWrapper.classList.remove('d-none');\n searchWrapper.insertAdjacentHTML('afterbegin', `<button class=\"btn btn-secondary btn-compact fa-search me-0 mb-0\" id=\"search-button\" aria-controls=\"search-dialog\">Open Search field</button>\n <dialog id=\"search-dialog\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col mb-0 ms-auto col-md-7\">\n <slot name=\"search\"></slot>\n </div>\n <div class=\"col d-none d-md-block mw-fit-content ms-3\">\n <button class=\"btn btn-compact btn-secondary fa-xmark-large m-0 mb-0\" type=\"button\" id=\"search-close\">Close search field</button>\n </div>\n </div>\n </div>\n </dialog>`);\n const searchButton = this.shadowRoot.querySelector('#search-button');\n const searchClose = this.shadowRoot.querySelector('#search-close');\n const searchDialog = this.shadowRoot.querySelector('#search-dialog');\n if (this.hasAttribute('data-search-open')) {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n }\n searchButton.addEventListener('click', () => {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n });\n searchClose.addEventListener('click', () => {\n searchDialog.removeAttribute('open');\n this.classList.remove('search-open');\n searchButton.removeAttribute('aria-expanded');\n });\n }\n if (this.classList.contains('nav--sticky')) {\n let oldScrollY = window.scrollY;\n window.onscroll = function (e) {\n if (oldScrollY < window.scrollY) {\n document.body.setAttribute('data-direction', 'down');\n }\n else {\n document.body.setAttribute('data-direction', 'up');\n }\n if (window.scrollY > 100) {\n document.body.classList.add('past100');\n }\n else {\n document.body.classList.remove('past100');\n }\n oldScrollY = window.scrollY;\n };\n }\n }\n}\nexport default iamNav;\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Cookies from '../../../../node_modules/js-cookie/dist/js.cookie.mjs';\nimport { populateNav, loadNavData, loadUserData, setEnabledLinks } from '../../modules/nav';\nimport iamNav from '../nav/nav.component';\nclass iamSTDNav extends HTMLElement {\n constructor() {\n super();\n this.defaultToNav = () => {\n const defaultContent = this.innerHTML;\n this.innerHTML = `<iam-nav ${(this.hasAttribute('class') ? `class=\"${this.getAttribute('class')}\"` : '')}>\n ${defaultContent}\n </iam-nav>`;\n };\n this.transformToNav = (data) => {\n var _a;\n const navElement = (_a = this.querySelector('iam-nav')) !== null && _a !== void 0 ? _a : this;\n // Remove current links\n navElement.querySelectorAll(`:scope > *`).forEach((element) => {\n if (!element.hasAttribute('slot'))\n element.remove();\n });\n const defaultContent = navElement.innerHTML;\n navElement.innerHTML = `${defaultContent}${populateNav(data)}`;\n const customEvent = new CustomEvent('rebuilt');\n navElement.dispatchEvent(customEvent);\n };\n this.defaultToSecondary = () => {\n // Set links and details to secondary slot\n Array.from(this.querySelectorAll(':scope > a, :scope > details')).forEach((element) => {\n element.setAttribute('slot', 'secondary');\n });\n const defaultContent = this.innerHTML;\n this.outerHTML = `${defaultContent}`;\n };\n this.transformToSecondary = (data) => {\n this.innerHTML = populateNav(data);\n // Set links and details to secondary slot\n Array.from(this.querySelectorAll(':scope > a, :scope > details')).forEach((element) => {\n element.setAttribute('slot', 'secondary');\n });\n const defaultContent = this.innerHTML;\n this.outerHTML = `${defaultContent}`;\n };\n }\n connectedCallback() {\n return __awaiter(this, void 0, void 0, function* () {\n var _a, _b;\n const component = this;\n this.wrapper = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.wrapper');\n if (!window.customElements.get(`iam-nav`))\n window.customElements.define(`iam-nav`, iamNav);\n if (this.hasAttribute('data-hub')) {\n this.defaultToNav();\n (_b = this.querySelector('.nav--menu.js-show')) === null || _b === void 0 ? void 0 : _b.classList.remove('js-show');\n }\n else {\n //this.defaultToSecondary(); TODO: change this to show default content but still be able to update\n }\n const data = yield loadNavData(Cookies).then((data) => {\n if (typeof data == 'string') {\n return data;\n }\n //console.log(data);\n if (this.hasAttribute('data-hub')) {\n const filteredData = data.filter(section => section.attributes.title != \"Learning and support\");\n this.transformToNav(filteredData);\n }\n else {\n this.transformToSecondary(data);\n }\n return true;\n });\n const userData = yield loadUserData(Cookies).then((data) => {\n setEnabledLinks(component, data);\n Array.from(document.querySelectorAll('[data-variable]')).forEach((element) => {\n if (data.attributes[element.getAttribute('data-variable')])\n element.innerHTML = data.attributes[element.getAttribute('data-variable')];\n });\n Array.from(document.querySelectorAll('[data-save-variable]')).forEach((element) => {\n //console.log(element);\n if (data.attributes[element.getAttribute('data-save-variable')])\n element.setAttribute('data-variable-value', data.attributes[element.getAttribute('data-save-variable')]);\n });\n return true;\n });\n });\n }\n}\nexport default iamSTDNav;\n"],"names":["assign","target","source","key","defaultConverter","value","init","converter","defaultAttributes","set","name","attributes","stringifiedAttributes","attributeName","get","cookies","jar","i","parts","found","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","reject","fulfilled","step","e","rejected","result","populateNav","data","html","feature","populateSections","populateLinks","section","link","loadNavData","Cookies","ajaxURL","signal","json","error","loadUserData","setEnabledLinks","component","selector","element","isEnabled","iamNav","shadowRoot","template","menuButton","menu","backdrop","buttonsHolder","createNavMenu","title","iconClass","button","mdButton","openMenu","openmenu","selectedButton","event","details","wrapper","detailsArrayElement","detailsElement","summary","searchWrapper","searchButton","searchClose","searchDialog","oldScrollY","iamSTDNav","defaultContent","_a","navElement","customEvent","_b","filteredData"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */var v=function(o,t,a,i){function n(r){return r instanceof a?r:new a(function(e){e(r)})}return new(a||(a=Promise))(function(r,e){function l(s){try{m(i.next(s))}catch(c){e(c)}}function d(s){try{m(i.throw(s))}catch(c){e(c)}}function m(s){s.done?r(s.value):n(s.value).then(l,d)}m((i=i.apply(o,t||[])).next())})};const g=o=>{let t="";return o.forEach(a=>{a.attributes.sections.length?t+=`<details name="megamenu"><summary>${a.attributes.title}</summary><div data-title="${a.attributes.title}">${u(a.attributes.sections)}</div></details>`:a.attributes.links?t+=`<details name="megamenu"><summary>${a.attributes.title}</summary><div data-title="${a.attributes.title}">${b(a.attributes.links)}</div></details>`:t+=`<a href="/">${a.attributes.title}</a>`}),t},u=o=>{let t="";return o.forEach(a=>{t+=`<span class="section section--${a.layout}">
5
5
  ${a.title?`<span class="lead section-title" data-product="${a.id}" data-title>${a.title}:</span>`:""}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */const P=function(t){return typeof t!="string"?!1:!isNaN(t)&&!isNaN(parseFloat(t))},B=(t,e)=>String(t).padStart(e,"0"),V=t=>t.charAt(0).toUpperCase()+t.slice(1),p=(t,e,a)=>e.split(/[\.\[\]\'\"]/).filter(i=>i).reduce((i,r)=>i?i[r]:a,t),T=(t=1)=>Math.floor(Math.random()*Date.now()*(t+1));var W=function(t,e,a,i){function r(l){return l instanceof a?l:new a(function(b){b(l)})}return new(a||(a=Promise))(function(l,b){function s(m){try{n(i.next(m))}catch(d){b(d)}}function o(m){try{n(i.throw(m))}catch(d){b(d)}}function n(m){m.done?l(m.value):r(m.value).then(s,o)}n((i=i.apply(t,e||[])).next())})};const F=(t,e)=>{switch(t){case"datetime":return new Date(e).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(e).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(e).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return e=V(e)}},U=function(t){const e=new Object;return Array.from(t.querySelectorAll("[data-filter]")).forEach(i=>{if(!(i.type=="radio"&&!i.checked)&&!(i.type=="checkbox"&&!i.checked)&&i&&i.value){const r=i.getAttribute("data-filter");let l=i.value;i.hasAttribute("data-date-from")&&(l+="-date-from"),i.hasAttribute("data-date-to")&&(l+="-date-to"),e[r]||(e[r]=[]),e[r].push(l)}}),e},J=t=>{let e=document.createElement("form");const a=t.querySelector("table");t.hasAttribute("data-filterby")?e=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?e=t.closest("form"):a.parentNode.insertBefore(e,a.nextSibling),e.hasAttribute("data-ajax")&&t.setAttribute("data-ajax",e.getAttribute("data-ajax")),e.hasAttribute("data-schema")&&t.setAttribute("data-schema",e.getAttribute("data-schema"))},w=(t,e,a,i,r)=>{a.querySelector("[name=show]")||a.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),a.querySelector("[name=page]")||a.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),i.addEventListener("update-show",l=>{if(a.querySelector("[name=show]").value!=l.detail.show){a.querySelector("[name=show]").value=l.detail.show;const b=new CustomEvent("update-show",{detail:{show:l.detail.show}});t.dispatchEvent(b),H(t,i),r()}}),i.addEventListener("update-page",l=>{if(a.querySelector("[name=page]").value!=l.detail.page){a.querySelector("[name=page]").value=l.detail.page;const b=new CustomEvent("update-page",{detail:{page:l.detail.page}});if(t.dispatchEvent(b),H(t,i),r(),!t.hasAttribute("data-no-scroll")){const o=e.getBoundingClientRect().top+window.pageYOffset+-250;window.scrollTo({top:o,behavior:"smooth"})}}})},X=(t,e)=>{let a=document.createElement("form");return t.hasAttribute("data-filterby")?a=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?a=t.closest("form"):t.querySelector("form")?a=t.querySelector("form"):e.parentNode.insertBefore(a,e.nextSibling),t.hasAttribute("data-ajax")&&a.setAttribute("data-ajax",t.getAttribute("data-ajax")),a},M=(t,e,a,i)=>{const r=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",15),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),G(t,i),C(e),K(t,e),t.classList.contains("mh-sm")&&r.classList.add("mh-sm"),t.classList.contains("mh-md")&&r.classList.add("mh-md"),t.classList.contains("mh-lg")&&r.classList.add("mh-lg"),t.classList.contains("table--cta")&&(Q(t,e),Z(t,e)),Y(t)},Y=t=>{Array.from(t.querySelectorAll("tr[data-highlight]")).forEach(e=>{e.insertAdjacentHTML("afterend",`<tr role="presentation" class="tr--highlight">
5
5
  <td colspan="100%"><i class="fa-solid fa-star"></i> ${e.getAttribute("data-highlight")}</td>
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */const R=t=>t.charAt(0).toUpperCase()+t.slice(1),p=(t,i,a)=>i.split(/[\.\[\]\'\"]/).filter(e=>e).reduce((e,b)=>e?e[b]:a,t),q=(t=1)=>Math.floor(Math.random()*Date.now()*(t+1));var I=function(t,i,a,e){function b(l){return l instanceof a?l:new a(function(s){s(l)})}return new(a||(a=Promise))(function(l,s){function r(m){try{n(e.next(m))}catch(d){s(d)}}function o(m){try{n(e.throw(m))}catch(d){s(d)}}function n(m){m.done?l(m.value):b(m.value).then(r,o)}n((e=e.apply(t,i||[])).next())})};const P=(t,i)=>{switch(t){case"datetime":return new Date(i).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(i).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(i).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return i=R(i)}},O=function(t){const i=new Object;return Array.from(t.querySelectorAll("[data-filter]")).forEach(e=>{if(!(e.type=="radio"&&!e.checked)&&!(e.type=="checkbox"&&!e.checked)&&e&&e.value){const b=e.getAttribute("data-filter");let l=e.value;e.hasAttribute("data-date-from")&&(l+="-date-from"),e.hasAttribute("data-date-to")&&(l+="-date-to"),i[b]||(i[b]=[]),i[b].push(l)}}),i},N=(t,i,a,e,b)=>{a.querySelector("[name=show]")||a.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),a.querySelector("[name=page]")||a.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),e.addEventListener("update-show",l=>{if(a.querySelector("[name=show]").value!=l.detail.show){a.querySelector("[name=show]").value=l.detail.show;const s=new CustomEvent("update-show",{detail:{show:l.detail.show}});t.dispatchEvent(s),T(t,e),b()}}),e.addEventListener("update-page",l=>{if(a.querySelector("[name=page]").value!=l.detail.page){a.querySelector("[name=page]").value=l.detail.page;const s=new CustomEvent("update-page",{detail:{page:l.detail.page}});if(t.dispatchEvent(s),T(t,e),b(),!t.hasAttribute("data-no-scroll")){const o=i.getBoundingClientRect().top+window.pageYOffset+-250;window.scrollTo({top:o,behavior:"smooth"})}}})},B=(t,i)=>{let a=document.createElement("form");return t.hasAttribute("data-filterby")?a=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?a=t.closest("form"):t.querySelector("form")?a=t.querySelector("form"):i.parentNode.insertBefore(a,i.nextSibling),t.hasAttribute("data-ajax")&&a.setAttribute("data-ajax",t.getAttribute("data-ajax")),a},E=(t,i,a,e)=>{const b=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",15),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),W(t,e),F(i),V(t,i),t.classList.contains("mh-sm")&&b.classList.add("mh-sm"),t.classList.contains("mh-md")&&b.classList.add("mh-md"),t.classList.contains("mh-lg")&&b.classList.add("mh-lg"),t.classList.contains("table--cta")&&(J(t,i),X(t,i)),U(t)},U=t=>{Array.from(t.querySelectorAll("tr[data-highlight]")).forEach(i=>{i.insertAdjacentHTML("afterend",`<tr role="presentation" class="tr--highlight">
5
5
  <td colspan="100%"><i class="fa-solid fa-star"></i> ${i.getAttribute("data-highlight")}</td>
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */const h=t=>t.charAt(0).toUpperCase()+t.slice(1),u=(t,a)=>{switch(t){case"datetime":return new Date(a).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(a).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(a).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return a=h(a)}},p=(t,a,e,i,r)=>{e.querySelector("[name=show]")||e.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),e.querySelector("[name=page]")||e.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),i.addEventListener("update-show",l=>{if(e.querySelector("[name=show]").value!=l.detail.show){e.querySelector("[name=show]").value=l.detail.show;const o=new CustomEvent("update-show",{detail:{show:l.detail.show}});t.dispatchEvent(o),c(t,i),r()}}),i.addEventListener("update-page",l=>{if(e.querySelector("[name=page]").value!=l.detail.page){e.querySelector("[name=page]").value=l.detail.page;const o=new CustomEvent("update-page",{detail:{page:l.detail.page}});if(t.dispatchEvent(o),c(t,i),r(),!t.hasAttribute("data-no-scroll")){const b=a.getBoundingClientRect().top+window.pageYOffset+-250;window.scrollTo({top:b,behavior:"smooth"})}}})},g=(t,a)=>{let e=document.createElement("form");return t.hasAttribute("data-filterby")?e=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?e=t.closest("form"):t.querySelector("form")?e=t.querySelector("form"):a.parentNode.insertBefore(e,a.nextSibling),t.hasAttribute("data-ajax")&&e.setAttribute("data-ajax",t.getAttribute("data-ajax")),e},f=(t,a,e,i)=>{const r=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",15),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),x(t,i),y(a),k(t,a),t.classList.contains("mh-sm")&&r.classList.add("mh-sm"),t.classList.contains("mh-md")&&r.classList.add("mh-md"),t.classList.contains("mh-lg")&&r.classList.add("mh-lg"),t.classList.contains("table--cta")&&(A(t,a),j(t,a)),w(t)},w=t=>{Array.from(t.querySelectorAll("tr[data-highlight]")).forEach(a=>{a.insertAdjacentHTML("afterend",`<tr role="presentation" class="tr--highlight">
5
5
  <td colspan="100%"><i class="fa-solid fa-star"></i> ${a.getAttribute("data-highlight")}</td>
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */const v=function(t){return typeof t!="string"?!1:!isNaN(t)&&!isNaN(parseFloat(t))},k=(t,a)=>String(t).padStart(a,"0"),A=t=>t.charAt(0).toUpperCase()+t.slice(1),u=(t=1)=>Math.floor(Math.random()*Date.now()*(t+1)),j=(t,a)=>{switch(t){case"datetime":return new Date(a).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(a).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(a).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return a=A(a)}},_=(t,a)=>{let i=document.createElement("form");return t.hasAttribute("data-filterby")?i=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?i=t.closest("form"):t.querySelector("form")?i=t.querySelector("form"):a.parentNode.insertBefore(i,a.nextSibling),t.hasAttribute("data-ajax")&&i.setAttribute("data-ajax",t.getAttribute("data-ajax")),i},h=(t,a,i,e)=>{const m=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",15),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),q(t,e),f(a),L(t,a),t.classList.contains("mh-sm")&&m.classList.add("mh-sm"),t.classList.contains("mh-md")&&m.classList.add("mh-md"),t.classList.contains("mh-lg")&&m.classList.add("mh-lg"),t.classList.contains("table--cta")&&(E(t,a),T(t,a)),S(t)},S=t=>{Array.from(t.querySelectorAll("tr[data-highlight]")).forEach(a=>{a.insertAdjacentHTML("afterend",`<tr role="presentation" class="tr--highlight">
5
5
  <td colspan="100%"><i class="fa-solid fa-star"></i> ${a.getAttribute("data-highlight")}</td>
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */const f=t=>t.charAt(0).toUpperCase()+t.slice(1),h=(t=1)=>Math.floor(Math.random()*Date.now()*(t+1)),g=(t,a)=>{switch(t){case"datetime":return new Date(a).toLocaleDateString("en-gb",{weekday:"short",year:"2-digit",month:"long",day:"numeric"})+" "+new Date(a).toLocaleTimeString("en-gb",{hour:"2-digit",minute:"2-digit"});case"date":return new Date(a).toLocaleDateString("en-gb",{day:"numeric",month:"long",year:"2-digit"});case"capitalise":return a=f(a)}},x=(t,a,e,i,b)=>{e.querySelector("[name=show]")||e.insertAdjacentHTML("beforeend",`<input name="show" type="hidden" value="${t.getAttribute("data-show")}" />`),e.querySelector("[name=page]")||e.insertAdjacentHTML("beforeend",`<input name="page" type="hidden" value="${t.getAttribute("data-page")}" />`),i.addEventListener("update-show",m=>{if(e.querySelector("[name=show]").value!=m.detail.show){e.querySelector("[name=show]").value=m.detail.show;const s=new CustomEvent("update-show",{detail:{show:m.detail.show}});t.dispatchEvent(s),u(t,i),b()}}),i.addEventListener("update-page",m=>{if(e.querySelector("[name=page]").value!=m.detail.page){e.querySelector("[name=page]").value=m.detail.page;const s=new CustomEvent("update-page",{detail:{page:m.detail.page}});if(t.dispatchEvent(s),u(t,i),b(),!t.hasAttribute("data-no-scroll")){const l=a.getBoundingClientRect().top+window.pageYOffset+-250;window.scrollTo({top:l,behavior:"smooth"})}}})},y=(t,a)=>{let e=document.createElement("form");return t.hasAttribute("data-filterby")?e=document.querySelector(`#${t.getAttribute("data-filterby")}`):t.closest("form")?e=t.closest("form"):t.querySelector("form")?e=t.querySelector("form"):a.parentNode.insertBefore(e,a.nextSibling),t.hasAttribute("data-ajax")&&e.setAttribute("data-ajax",t.getAttribute("data-ajax")),e},w=(t,a,e,i)=>{const b=t.shadowRoot.querySelector(".table__wrapper");t.hasAttribute("data-total")||t.setAttribute("data-total",t.querySelectorAll("tbody tr").length),t.hasAttribute("data-page")||t.setAttribute("data-page",1),t.hasAttribute("data-show")||t.setAttribute("data-show",15),t.hasAttribute("data-increment")||t.setAttribute("data-increment",t.getAttribute("data-show")),k(t,i),A(a),j(t,a),t.classList.contains("mh-sm")&&b.classList.add("mh-sm"),t.classList.contains("mh-md")&&b.classList.add("mh-md"),t.classList.contains("mh-lg")&&b.classList.add("mh-lg"),t.classList.contains("table--cta")&&(_(t,a),S(t,a)),v(t)},v=t=>{Array.from(t.querySelectorAll("tr[data-highlight]")).forEach(a=>{a.insertAdjacentHTML("afterend",`<tr role="presentation" class="tr--highlight">
5
5
  <td colspan="100%"><i class="fa-solid fa-star"></i> ${a.getAttribute("data-highlight")}</td>
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.8.2--beta5
2
+ * iamKey v7.8.2--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */const k=(t,o,i,r)=>{const s=Math.tan(.375*Math.PI),l=window.innerWidth||document.body.clientWidth,a=Math.max(1,Math.floor(.01*l)),d=i-t,e=r-o,c=Math.abs(d/e),n=Math.abs(e/d);if(Math.abs(d)>a||Math.abs(e)>a){if(n<=s)return d<0?"left":"right";if(c<=s)return e<0?"top":"bottom"}else return"tap"},w=function(t){const o=t.querySelectorAll(":scope > details, :scope > a");let i=t.querySelector(":scope > .tabs__links"),r=t.querySelector(":scope .tabs__dropdown");if(t.shadowRoot&&t.shadowRoot.querySelector(".tabs__links")&&(i=t.shadowRoot.querySelector(".tabs__links")),!i){i=document.createElement("div"),i.classList.add("tabs__links");const l=document.createElement("div");l.classList.add("tabs__links__wrapper"),l.prepend(i),t.prepend(l)}r||(r=document.createElement("select"),r.classList.add("tabs__dropdown"),t.prepend(r));let s=0;o.forEach(l=>{let a=document.createElement("button");const d=document.createElement("option");if(l.matches("details")){const e=l.querySelector(":scope > summary"),c=e.classList.contains("disabled");e.classList.add("visually-hidden"),l.hasAttribute("id")&&a.setAttribute("data-id",`${l.getAttribute("id")}`),l.hasAttribute("open")&&a.setAttribute("aria-pressed",!0),a.innerHTML=`${e.innerText}`,t.classList.contains("tabs--toggle-tags")?(a.classList.add("tag"),a.classList.add("tag--toggle")):a.classList.add("link"),a.setAttribute("data-index",s),a.setAttribute("part","tab-link"),d.innerHTML=`${e.innerText}`,d.value=e.innerText.replace(/\s+/g,"-").toLowerCase(),d.setAttribute("data-index",s),l.setAttribute("tabindex","-1"),c&&a.classList.add("disabled"),s++}else l.matches("a")&&(a=l);i.appendChild(a),r.appendChild(d)})},y=function(t){const o=t.querySelectorAll(":scope > details"),i=t.querySelectorAll(":scope > details > summary");let r=t.querySelector(":scope .tabs__links"),s=t.querySelectorAll(":scope .tabs__links > button");const l=t.querySelector(":scope .tabs__dropdown");let a=t.querySelector(":scope .tabs__next"),d;if(window.isClicked=!1,window.isScrolling=!1,t.shadowRoot&&(s=t.shadowRoot.querySelectorAll(".tabs__links > button"),r=t.shadowRoot.querySelector(".tabs__links"),a=t.shadowRoot.querySelector(".tabs__next")),s.forEach(e=>{e.addEventListener("click",c=>{if(c.preventDefault(),window.isClicked=!0,e.classList.contains("disabled"))return!1;s.forEach(n=>{const m=n==e;n.setAttribute("aria-pressed",m)}),r.scroll({top:0,left:e.offsetLeft,behavior:"smooth"}),f(o,e),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openTab",tabTitle:e.textContent}),e.matches(":last-child")?a?.setAttribute("disabled","disabled"):a?.removeAttribute("disabled")}),_(o,l)}),r.addEventListener("scrollend",()=>{clearTimeout(d),d=setTimeout(function(){let e=s[0],c=Math.abs(e.getBoundingClientRect().left);if(s.forEach(n=>{Math.abs(n.getBoundingClientRect().left)<c&&(c=Math.abs(n.getBoundingClientRect().left),e=n)}),window.isClicked)return window.isClicked=!1,!1;e.click(),e.focus()},500)}),i.forEach((e,c)=>{e.addEventListener("click",n=>{n.preventDefault(),s[c].click()})}),o.forEach((e,c)=>{e.addEventListener("toggle",function(){var n;e.open&&((n=e.querySelector("button,input"))===null||n===void 0||n.focus())})}),a?.addEventListener("click",e=>{e.preventDefault();const n=r.querySelector('[aria-pressed="true"]').nextSibling;n&&n.click()}),t.classList.contains("tabs--guided")){let e=0,c=0,n=0,m=0;o.forEach(p=>{p.addEventListener("touchstart",b=>{b.stopPropagation(),e=b.changedTouches[0].screenX,c=b.changedTouches[0].screenY}),p.addEventListener("touchend",b=>{b.stopPropagation(),n=b.changedTouches[0].screenX,m=b.changedTouches[0].screenY;const v=k(e,c,n,m),u=r.querySelector('[aria-pressed="true"]'),h=u.nextSibling,g=u.previousSibling;switch(v){case"left":h&&h.click();break;case"right":g&&g.click();break}})})}},f=function(t,o){t.forEach((i,r)=>{const s=o.getAttribute("data-index")==r;s?i.setAttribute("open",s):i.removeAttribute("open")})},_=function(t,o){o.addEventListener("change",i=>{i.preventDefault();const r=o.options[o.selectedIndex];f(t,r),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openTab",tabTitle:r.innerText})})},x=function(t){if(!t.querySelector(":scope > details"))return!1;const o=t.querySelectorAll(":scope > details"),i=t.shadowRoot.querySelectorAll(".tabs__links > button");location.hash&&t.shadowRoot.querySelector(`.tabs__links [data-id="${location.hash.replace("#","")}"]`)?(t.shadowRoot.querySelector(`[data-id="${location.hash.replace("#","")}"]`).setAttribute("aria-pressed",!0),t.querySelector(`details[id="${location.hash.replace("#","")}"]`).setAttribute("open",!0)):t.querySelector("details[open]")||(o[0].setAttribute("open",!0),i[0].setAttribute("aria-pressed",!0))},z=function(t){w(t),y(t),x(t)};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"tabs"});class L extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const o=document.createElement("template");o.innerHTML=`
5
5
  <style>