@iamproperty/components 5.4.2-beta3 → 5.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/css/components/actionbar.global.css +1 -1
- package/assets/css/components/actionbar.global.css.map +1 -1
- package/assets/css/components/card.css +1 -1
- package/assets/css/components/card.css.map +1 -1
- package/assets/css/components/card.global.css +1 -1
- package/assets/css/components/card.global.css.map +1 -1
- package/assets/css/components/nav.css +1 -1
- package/assets/css/components/nav.css.map +1 -1
- package/assets/css/components/table.global.css +1 -1
- package/assets/css/components/table.global.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.min.js +3 -3
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
- package/assets/js/components/card/card.component.js +5 -2
- package/assets/js/components/card/card.component.min.js +8 -5
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
- package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/nav/nav.component.js +3 -0
- package/assets/js/components/nav/nav.component.min.js +3 -3
- package/assets/js/components/nav/nav.component.min.js.map +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +1 -1
- package/assets/js/components/search/search.component.min.js +1 -1
- package/assets/js/components/table/table.component.min.js +2 -2
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/dynamic.min.js +1 -1
- package/assets/js/scripts.bundle.js +6 -3
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/sass/_elements.scss +2 -0
- package/assets/sass/_functions/utilities.scss +3 -1
- package/assets/sass/_functions/variables.scss +4 -1
- package/assets/sass/_utilities.scss +1 -0
- package/assets/sass/components/actionbar.global.scss +1 -0
- package/assets/sass/components/card.global.scss +6 -0
- package/assets/sass/components/card.scss +37 -30
- package/assets/sass/components/nav.scss +3 -3
- package/assets/sass/components/table.global.scss +14 -2
- package/assets/sass/elements/details.scss +1 -1
- package/assets/sass/elements/progress.scss +71 -0
- package/assets/sass/elements/table.element.scss +1 -1
- package/assets/sass/helpers/line-clamp.scss +24 -0
- package/assets/ts/components/actionbar/actionbar.component.ts +1 -1
- package/assets/ts/components/card/card.component.ts +5 -2
- package/assets/ts/components/nav/nav.component.ts +6 -0
- package/dist/components.es.js +11 -11
- package/dist/components.umd.js +33 -30
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/function h(d,m){function u(e,t){let l=!1,r=t.getAttribute("name");r.includes("[]")&&(r=r.replace("[]",`[${t.value}]`));let i=e.querySelector(`[data-name="${r}"]`);i&&t.getAttribute("type")=="checkbox"&&(l=!t.checked);let o=t.getAttribute("data-filter-text");if(i||(i=document.createElement("button"),e.appendChild(i)),i.setAttribute("type","button"),i.classList.add("filter"),i.setAttribute("data-name",r),i.innerHTML=o.replace("$value",t.value),(!t.value||l)&&i.remove(),t.parentNode.closest("[data-filter-text]")){let p=t.parentNode.closest("[data-filter-text]"),f=!0;if(r="",p.querySelectorAll("input").forEach((a,n)=>{let s=a.getAttribute("name");if(r+=`${n!=0?",":""}${s}`,e.querySelector(`[data-name="${s}"]`)&&e.querySelector(`[data-name="${s}"]`).remove(),a.value){let c=document.createElement("button");c.setAttribute("type","button"),c.classList.add("filter"),c.setAttribute("data-name",s),c.innerHTML=o.replace("$value",a.value),e.appendChild(c)}else f=!1}),e.querySelector(`[data-name="${r}"]`)&&e.querySelector(`[data-name="${r}"]`).remove(),f){let a=p.getAttribute("data-filter-text");p.querySelectorAll("input").forEach((s,c)=>{let b=s.getAttribute("name");e.querySelector(`[data-name="${b}"]`)&&e.querySelector(`[data-name="${b}"]`).remove(),a=a.replace(`$${c+1}`,s.value)});let n=document.createElement("button");n.setAttribute("type","button"),n.classList.add("filter"),n.setAttribute("data-name",r),n.innerHTML=a,e.appendChild(n)}}}Array.from(d.querySelectorAll('input[type="checkbox"]:checked')).forEach((e,t)=>{u(m,e)}),Array.from(d.querySelectorAll("input[data-filter-text]")).forEach((e,t)=>{e.addEventListener("change",function(l){u(m,e),l.stopPropagation()})}),d.addEventListener("change",function(e){if(e&&e.target instanceof HTMLElement&&e.target.closest("input[data-filter-text]")){let t=e.target.closest("input[data-filter-text]");u(m,t)}}),m.addEventListener("click",function(e){if(e&&e.target instanceof HTMLElement&&e.target.closest(".filter")){let r=e.target.closest(".filter"),i=r.getAttribute("data-name").split(",");for(var t=0;t<i.length;t++){let o=i[t],p=`[name="${o}"]`;o.match(/\[(.*)\]/)&&(o.replace(/\[(.*)\]/,"[]"),p=`[value="${o.replace(/.*\[(.*)\]/,"$1")}"]`);let f=d.querySelectorAll(p);for(var l=0;l<f.length;l++){let a=f[l];if(a.getAttribute("type")!="radio"&&a.getAttribute("type")!="checkbox")a.value="";else{a.checked=!1;var e=new Event("force");d.hasAttribute("data-nosubmit")||a.closest("form").dispatchEvent(e)}}}r.remove()}},!1)}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Applied Filters"});class g extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const m=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",u=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${m}/css/core.min.css`;let e=this.classList.toString();const t=document.createElement("template");t.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -24,7 +24,7 @@ class iamCard extends HTMLElement {
|
|
|
24
24
|
${this.hasAttribute('css') ? `@import "${this.getAttribute('css')}";` : ``}
|
|
25
25
|
</style>
|
|
26
26
|
<link rel="stylesheet" href="https://kit.fontawesome.com/26fdbf0179.css" crossorigin="anonymous">
|
|
27
|
-
<div class="card ${classList}" tabindex="0"
|
|
27
|
+
<div class="card ${classList}" tabindex="0" part="card">
|
|
28
28
|
${this.hasAttribute('data-image') ? `<div class="card__head"><img src="${this.getAttribute('data-image')}" alt="" loading="lazy" /><div class="card__badges"><slot name="badges"></slot></div></div>` : ''}
|
|
29
29
|
<div class="card__body">
|
|
30
30
|
${!this.hasAttribute('data-image') ? `<div class="card__badges"><slot name="badges"></slot></div>` : ''}
|
|
@@ -34,7 +34,10 @@ class iamCard extends HTMLElement {
|
|
|
34
34
|
</div>
|
|
35
35
|
${this.hasAttribute('data-add-link') ? `<button class="btn btn-compact btn-secondary fa-plus">Add property</button>` : ''}
|
|
36
36
|
<slot name="checkbox"></slot>
|
|
37
|
-
|
|
37
|
+
<div class="card__footer">
|
|
38
|
+
<slot name="footer"></slot>
|
|
39
|
+
${this.hasAttribute('data-cta') ? `<span class="link d-inline-block pt-0 mb-0">${this.getAttribute('data-cta')}</span>` : ''}
|
|
40
|
+
</div>
|
|
38
41
|
</div>
|
|
39
42
|
`;
|
|
40
43
|
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Card"});class h extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),this.querySelector('[class*="fa-"]')&&this.classList.add("card--has-icon");let e=this.classList.toString();const a=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",o=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${a}/css/core.min.css`,t=document.createElement("template");t.innerHTML=`
|
|
5
5
|
<style>
|
|
6
6
|
@import "${o}";
|
|
7
|
-
.card{--card-icon-right: 1rem;box-shadow:var(--card-box-shadow);border-radius:var(--card-border-radius);position:relative;font-weight:bold;font-size:1.125rem;line-height:1.5rem;color:var(--colour-primary);min-height:100%;width:100%;text-align:left;display:
|
|
7
|
+
.card{--card-icon-right: 1rem;box-shadow:var(--card-box-shadow);border-radius:var(--card-border-radius);position:relative;font-weight:bold;font-size:1.125rem;line-height:1.5rem;color:var(--colour-primary);min-height:100%;width:100%;text-align:left;display:flex;flex-direction:column;overflow:hidden;z-index:0;background:var(--colour-canvas-2);outline:2px solid var(--colour-canvas-2);outline-offset:-2px}.card>*:not(.btn-compact){min-width:100%}.card.border-0{box-shadow:none;--card-left-padding: 0rem;outline-offset:1px !important}.card__body{position:relative;padding:var(--card-top-padding) var(--card-right-padding) 0 var(--card-left-padding);z-index:-1}.card__footer{margin-top:auto;padding:0 var(--card-right-padding) var(--card-bottom-padding) var(--card-left-padding)}.card:is(:hover,:focus) .link:after{width:50%}.card:has(.card__footer .link):before,.card:has(.card__footer .link):after{display:none}.card:before,.card:after{content:"";position:absolute;right:var(--card-icon-right);bottom:var(--card-bottom-padding);height:1.5rem;width:1.5rem;background:var(--colour-warning);border-radius:50%}.card:after{background:var(--colour-primary-theme);mask-image:var(--icon, var(--icon-arrow));mask-size:50%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon, var(--icon-arrow));-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;z-index:2}.card:is(:hover,:focus,.hover){--card-icon-right: 0.5rem;outline:2px solid var(--colour, var(--colour-primary));outline-offset:-2px}.card:not([class*=colour-]):is(:hover,:focus,.hover):before{background:var(--colour-primary-theme)}.card:not([class*=colour-]):is(:hover,:focus,.hover):after{background:#fff}.card:is(:active,.active){--card-icon-right: 0.5rem;outline:none}.card:is(:active,.active):before{background:var(--colour-warning)}.card:is(:active,.active):after{background:var(--colour-primary)}.card:is(:active){background:#fcfcfc}.card span{display:block;font-weight:bold;padding-top:1.5rem;font-size:1rem}.card:has(.card__illustration) .card__body{align-items:center;display:flex}.card:has(.card__illustration) .card__body .card__illustration{height:4rem;width:4rem;margin-right:1.5rem;margin-top:-1.25rem;margin-bottom:-1.25rem;position:relative}.card:has(.card__illustration) .card__body .card__illustration img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain}.card .card__total{font-size:3rem;line-height:3rem;padding-right:1rem;margin-top:.5rem}.card.card--has-icon:not(.card--secondary):not(.card--filter){display:flex;align-items:center}.card.card--has-icon:not(.card--secondary):not(.card--filter):before,.card.card--has-icon:not(.card--secondary):not(.card--filter):after{top:calc(50% - .75rem);bottom:auto}.card.card--has-icon:not(.card--secondary):not(.card--filter) .card__body{padding-left:4rem;margin-block:auto;padding-bottom:var(--card-bottom-padding)}.card.card--has-icon:not(.card--secondary):not(.card--filter) .card__footer{padding:0;display:none}::slotted(i){font-size:1.5rem !important;margin:-3px var(--card-icon-right) 0 0 !important;vertical-align:middle !important}::slotted(i:not(.fa-light):not(.fa-bold)){font-weight:400 !important}::slotted(span:not(.badge)){display:block !important;font-weight:normal !important;font-size:1rem !important}::slotted(span:not(.badge):not([class*=pt-])){padding-top:1.5rem !important}.card__badges{position:absolute;top:0;right:.25rem;padding:.25rem;z-index:9;text-align:right;width:1}.card__head .card__badges{top:auto;bottom:0;text-align:left;left:.25rem;right:auto}.card[class*=colour-],.card--filter{border-left:0.75rem solid var(--colour, var(--colour-primary))}.card--filter{--top-padding: 1.5rem;--right-padding: 1rem;--bottom-padding: 1.5rem;--left-padding: 1rem}.card--filter:has(.card__total) .card__body{align-items:center;display:flex}.card--filter:before,.card--filter:after{display:none}.card--filter:is(:hover,:focus,.hover){outline:none}.card--filter:is(:hover,:focus,.hover) :is(.card__body,.card__footer){background:#eee}.card--filter:is(:checked,.checked,:active,.active){outline:2px solid var(--colour, var(--colour-primary));outline-offset:-2px}.card--filter:is(:checked,.checked,:active,.active) .card__body{background:none}.card--filter.card--has-icon{--bottom-padding: 1rem;border:none}.card--filter .icon{font-size:1.125rem !important;height:1.125rem !important;margin:0 0 .5rem 0 !important;font-weight:400 !important;display:block !important}.card--filter .card__total{margin-top:0;order:-1}@media screen and (prefers-color-scheme: dark){.card--filter .card__body{background:none !important}.card--filter:is(:hover,:focus,.hover,:active,.active):not(:checked,.checked){outline:2px solid var(--colour, var(--colour-primary)) !important;outline-offset:-2px}}.card--filter ::slotted(i){display:block !important;font-size:1.125rem !important;margin:0 0 .5rem 0 !important}.card:has(.card__head) .card__head{padding-bottom:0;padding-top:27%;position:relative;overflow:hidden;background:rgba(0,0,0,.1);z-index:-1}.card:has(.card__head) .card__head>img{position:absolute;top:0;left:0;width:102%;height:102%;object-fit:cover}.card.card--lg-image:has(.card__head) .card__head{padding-top:55%}:host([data-selected]) .card:before,:host([data-selected]) .card:after{display:none !important}:host(.card--flag){position:relative}:host(.card--flag):after{content:"\uF024";font-family:"Font Awesome 6 Pro";position:absolute;top:1rem;right:1rem;font-size:1rem;line-height:1;height:1rem;width:1rem;display:inline-block;font-weight:normal;color:var(--colour, var(--colour-primary))}.card--secondary{--card-top-padding: 1rem;--card-bottom-padding: 1.5rem}.card--secondary:before,.card--secondary:after{display:none}.card--secondary .btn-compact{position:absolute;top:0;right:0;margin:.5rem .5rem 0 0;z-index:99}.card--secondary:has(.btn-compact:is(:hover,:focus,:active)){pointer-events:none;outline:none}.card--secondary:has(.btn-compact:is(:hover,:focus,:active)) .card__body{background:none;border-color:rgba(0,0,0,0) !important}.card--secondary:has(.btn-compact:is(:hover,:focus,:active)) .btn-compact{pointer-events:all}.card--secondary ::slotted(i){display:block !important;font-size:2.5rem !important;margin:.5rem 0 .5rem 0 !important;line-height:2.5rem}/*# sourceMappingURL=assets/css/components/card.css.map */
|
|
8
8
|
|
|
9
9
|
${this.hasAttribute("css")?`@import "${this.getAttribute("css")}";`:""}
|
|
10
10
|
</style>
|
|
11
11
|
<link rel="stylesheet" href="https://kit.fontawesome.com/26fdbf0179.css" crossorigin="anonymous">
|
|
12
|
-
<div class="card ${e}" tabindex="0"
|
|
12
|
+
<div class="card ${e}" tabindex="0" part="card">
|
|
13
13
|
${this.hasAttribute("data-image")?`<div class="card__head"><img src="${this.getAttribute("data-image")}" alt="" loading="lazy" /><div class="card__badges"><slot name="badges"></slot></div></div>`:""}
|
|
14
14
|
<div class="card__body">
|
|
15
15
|
${this.hasAttribute("data-image")?"":'<div class="card__badges"><slot name="badges"></slot></div>'}
|
|
@@ -19,8 +19,11 @@
|
|
|
19
19
|
</div>
|
|
20
20
|
${this.hasAttribute("data-add-link")?'<button class="btn btn-compact btn-secondary fa-plus">Add property</button>':""}
|
|
21
21
|
<slot name="checkbox"></slot>
|
|
22
|
-
|
|
22
|
+
<div class="card__footer">
|
|
23
|
+
<slot name="footer"></slot>
|
|
24
|
+
${this.hasAttribute("data-cta")?`<span class="link d-inline-block pt-0 mb-0">${this.getAttribute("data-cta")}</span>`:""}
|
|
25
|
+
</div>
|
|
23
26
|
</div>
|
|
24
|
-
`,this.shadowRoot.appendChild(t.content.cloneNode(!0)),document.getElementById("cardGlobal")||document.head.insertAdjacentHTML("beforeend",`<style id="cardGlobal">@supports not selector(:has(*)){iam-card{margin-bottom:2rem;display:block}}iam-card>div:has([type=checkbox]){display:contents}iam-card>div:has([type=checkbox])>input:is([type=radio],[type=checkbox])+label{position:absolute !important;top:.5rem;right:.5rem;width:2rem;padding-left:2rem;margin:0.25rem 0.5rem !important;height:2.5rem;overflow:hidden}iam-card.card--has-icon:not(.card--filter):not(.card--secondary) i{position:absolute;top:calc(50% - .5rem - 2px);left:1rem}[data-select-container]:has([type=checkbox]:checked) iam-card>div:has([type=checkbox])>input:is([type=radio],[type=checkbox]){width:100%;height:100%;max-height:100%;max-width:100%;cursor:pointer;pointer-events:all;inset:0;border-radius:0;z-index:10}/*# sourceMappingURL=assets/css/components/card.global.css.map */
|
|
27
|
+
`,this.shadowRoot.appendChild(t.content.cloneNode(!0)),document.getElementById("cardGlobal")||document.head.insertAdjacentHTML("beforeend",`<style id="cardGlobal">@supports not selector(:has(*)){iam-card{margin-bottom:2rem;display:block}}iam-card>div:has([type=checkbox]){display:contents}iam-card>div:has([type=checkbox])>input:is([type=radio],[type=checkbox])+label{position:absolute !important;top:.5rem;right:.5rem;width:2rem;padding-left:2rem;margin:0.25rem 0.5rem !important;height:2.5rem;overflow:hidden}iam-card.card--has-icon:not(.card--filter):not(.card--secondary) i{position:absolute;top:calc(50% - .5rem - 2px);left:1rem}[data-select-container]:has([type=checkbox]:checked) iam-card>div:has([type=checkbox])>input:is([type=radio],[type=checkbox]){width:100%;height:100%;max-height:100%;max-width:100%;cursor:pointer;pointer-events:all;inset:0;border-radius:0;z-index:10}a[target=_blank] iam-card::part(card){--icon: var(--icon-new-tab)}/*# sourceMappingURL=assets/css/components/card.global.css.map */
|
|
25
28
|
</style>`)}connectedCallback(){this.classList.add("loaded");const e=this.parentNode.closest("a, button, label"),a=this.shadowRoot.querySelector(".card"),o=this.shadowRoot.querySelector(".btn-compact");if(e.setAttribute("tabindex","-1"),e.matches("label[for]")&&(document.getElementById(e.getAttribute("for")).checked?a.classList.add("checked"):a.classList.remove("checked")),this.addEventListener("click",t=>{let r=new Event("click");a.dispatchEvent(r)}),a.addEventListener("click",t=>{if(e.matches("label[for]")){t.stopPropagation(),t.preventDefault();const r=document.getElementById(e.getAttribute("for")),i=r.getAttribute("name"),d=r.getAttribute("id");Array.from(document.querySelectorAll(`[name="${i}"][type="radio"]:not([id="${d}"])`)).forEach((c,l)=>{document.querySelector(`[for="${c.getAttribute("id")}"] iam-card`).dispatchEvent(new Event("inactive"))}),e.click(),r.checked?a.classList.add("checked"):a.classList.remove("checked")}}),this.addEventListener("inactive",t=>{a.classList.remove("checked")}),a.addEventListener("keydown",t=>{switch(t.keyCode){case 32:case 13:if(e.matches("label[for]")){t.stopPropagation(),t.preventDefault();const r=document.getElementById(e.getAttribute("for")),i=r.getAttribute("name"),d=r.getAttribute("id");Array.from(document.querySelectorAll(`[name="${i}"]:not([id="${d}"])`)).forEach((c,l)=>{document.querySelector(`[for="${c.getAttribute("id")}"] iam-card`).dispatchEvent(new Event("inactive"))}),e.click(),r.checked?a.classList.add("checked"):a.classList.remove("checked")}else e.click();break}}),o){let t=this.getAttribute("data-add-link");o.addEventListener("click",r=>{r.stopPropagation(),r.preventDefault(),window.location=t})}}static get observedAttributes(){return["data-total","class"]}attributeChangedCallback(e,a,o){switch(e){case"data-total":{this.shadowRoot.querySelector(".card__total")&&(this.shadowRoot.querySelector(".card__total").innerHTML=o);break}case"class":{let t=this.classList.toString();this.querySelector('[class*="fa-"]')&&(t+=" card--has-icon"),this.shadowRoot.querySelector(".card").setAttribute("class",`card ${t}`);break}}}}export{h as default};
|
|
26
29
|
//# sourceMappingURL=card.component.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card.component.min.js","sources":["card.component.js"],"sourcesContent":["// @ts-nocheck\n// Data layer Web component created\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n \"event\": \"customElementRegistered\",\n \"element\": \"Card\"\n});\nclass iamCard extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n if (this.querySelector('[class*=\"fa-\"]'))\n this.classList.add('card--has-icon');\n let classList = this.classList.toString();\n const assetLocation = document.body.hasAttribute('data-assets-location') ? document.body.getAttribute('data-assets-location') : '/assets';\n const coreCSS = document.body.hasAttribute('data-core-css') ? document.body.getAttribute('data-core-css') : `${assetLocation}/css/core.min.css`;\n const loadCSS = `@import \"${assetLocation}/css/components/card.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/card.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\n <style>\n @import \"${coreCSS}\";\n ${loadCSS}\n ${this.hasAttribute('css') ? `@import \"${this.getAttribute('css')}\";` : ``}\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/26fdbf0179.css\" crossorigin=\"anonymous\">\n <div class=\"card ${classList}\" tabindex=\"0\" role=\"button\">\n ${this.hasAttribute('data-image') ? `<div class=\"card__head\"><img src=\"${this.getAttribute('data-image')}\" alt=\"\" loading=\"lazy\" /><div class=\"card__badges\"><slot name=\"badges\"></slot></div></div>` : ''}\n <div class=\"card__body\">\n ${!this.hasAttribute('data-image') ? `<div class=\"card__badges\"><slot name=\"badges\"></slot></div>` : ''}\n ${this.hasAttribute('data-illustration') ? `<div class=\"card__illustration\"><img src=\"${this.getAttribute('data-illustration')}\" alt=\"\" loading=\"lazy\" /></div>` : ''}\n <slot></slot>\n ${this.hasAttribute('data-total') ? `<div class=\"card__total\">${this.getAttribute('data-total')}</div>` : ''}\n </div>\n ${this.hasAttribute('data-add-link') ? `<button class=\"btn btn-compact btn-secondary fa-plus\">Add property</button>` : ''}\n <slot name=\"checkbox\"></slot>\n ${this.hasAttribute('data-cta') ? `<div class=\"card__footer\"><span class=\"link\">${this.getAttribute('data-cta')}</span></div>` : ''}\n </div>\n `;\n this.shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('cardGlobal'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"cardGlobal\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n this.classList.add('loaded');\n // Mimic clicking the parent node so the focus and target events can be on the card\n const parentNode = this.parentNode.closest('a, button, label');\n const card = this.shadowRoot.querySelector('.card');\n const btnCompact = this.shadowRoot.querySelector('.btn-compact');\n parentNode.setAttribute('tabindex', '-1');\n if (parentNode.matches('label[for]')) {\n let isChecked = document.getElementById(parentNode.getAttribute('for')).checked;\n if (isChecked)\n card.classList.add('checked');\n else\n card.classList.remove('checked');\n }\n // Click event down\n this.addEventListener('click', (event) => {\n let clickEvent = new Event('click');\n card.dispatchEvent(clickEvent);\n });\n card.addEventListener('click', (event) => {\n if (parentNode.matches('label[for]')) {\n event.stopPropagation();\n event.preventDefault();\n const input = document.getElementById(parentNode.getAttribute('for'));\n const inputName = input.getAttribute('name');\n const inputID = input.getAttribute('id');\n // Mimic radio button functionality\n const inputs = Array.from(document.querySelectorAll(`[name=\"${inputName}\"][type=\"radio\"]:not([id=\"${inputID}\"])`));\n inputs.forEach((input, index) => {\n const otherCard = document.querySelector(`[for=\"${input.getAttribute('id')}\"] iam-card`);\n otherCard.dispatchEvent(new Event('inactive'));\n });\n parentNode.click();\n let isChecked = input.checked;\n if (isChecked)\n card.classList.add('checked');\n else\n card.classList.remove('checked');\n }\n });\n this.addEventListener('inactive', (event) => {\n card.classList.remove('checked');\n });\n card.addEventListener('keydown', (event) => {\n switch (event.keyCode) {\n case 32:\n case 13:\n if (parentNode.matches('label[for]')) {\n event.stopPropagation();\n event.preventDefault();\n const input = document.getElementById(parentNode.getAttribute('for'));\n const inputName = input.getAttribute('name');\n const inputID = input.getAttribute('id');\n const inputs = Array.from(document.querySelectorAll(`[name=\"${inputName}\"]:not([id=\"${inputID}\"])`));\n inputs.forEach((input, index) => {\n const otherCard = document.querySelector(`[for=\"${input.getAttribute('id')}\"] iam-card`);\n otherCard.dispatchEvent(new Event('inactive'));\n });\n parentNode.click();\n let isChecked = input.checked;\n if (isChecked)\n card.classList.add('checked');\n else\n card.classList.remove('checked');\n }\n else {\n parentNode.click();\n }\n break;\n default:\n break;\n }\n });\n if (btnCompact) {\n let addLocation = this.getAttribute('data-add-link');\n btnCompact.addEventListener('click', (event) => {\n event.stopPropagation();\n event.preventDefault();\n window.location = addLocation;\n });\n }\n }\n static get observedAttributes() {\n return [\"data-total\", \"class\"];\n }\n attributeChangedCallback(attrName, oldVal, newVal) {\n switch (attrName) {\n case \"data-total\": {\n if (this.shadowRoot.querySelector('.card__total'))\n this.shadowRoot.querySelector('.card__total').innerHTML = newVal;\n break;\n }\n case \"class\": {\n let classList = this.classList.toString();\n if (this.querySelector('[class*=\"fa-\"]'))\n classList += ' card--has-icon';\n this.shadowRoot.querySelector('.card').setAttribute('class', `card ${classList}`);\n break;\n }\n }\n }\n}\nexport default iamCard;\n"],"names":["iamCard","classList","assetLocation","coreCSS","template","parentNode","card","btnCompact","event","clickEvent","input","inputName","inputID","index","addLocation","attrName","oldVal","newVal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"card.component.min.js","sources":["card.component.js"],"sourcesContent":["// @ts-nocheck\n// Data layer Web component created\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n \"event\": \"customElementRegistered\",\n \"element\": \"Card\"\n});\nclass iamCard extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n if (this.querySelector('[class*=\"fa-\"]'))\n this.classList.add('card--has-icon');\n let classList = this.classList.toString();\n const assetLocation = document.body.hasAttribute('data-assets-location') ? document.body.getAttribute('data-assets-location') : '/assets';\n const coreCSS = document.body.hasAttribute('data-core-css') ? document.body.getAttribute('data-core-css') : `${assetLocation}/css/core.min.css`;\n const loadCSS = `@import \"${assetLocation}/css/components/card.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/card.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\n <style>\n @import \"${coreCSS}\";\n ${loadCSS}\n ${this.hasAttribute('css') ? `@import \"${this.getAttribute('css')}\";` : ``}\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/26fdbf0179.css\" crossorigin=\"anonymous\">\n <div class=\"card ${classList}\" tabindex=\"0\" part=\"card\">\n ${this.hasAttribute('data-image') ? `<div class=\"card__head\"><img src=\"${this.getAttribute('data-image')}\" alt=\"\" loading=\"lazy\" /><div class=\"card__badges\"><slot name=\"badges\"></slot></div></div>` : ''}\n <div class=\"card__body\">\n ${!this.hasAttribute('data-image') ? `<div class=\"card__badges\"><slot name=\"badges\"></slot></div>` : ''}\n ${this.hasAttribute('data-illustration') ? `<div class=\"card__illustration\"><img src=\"${this.getAttribute('data-illustration')}\" alt=\"\" loading=\"lazy\" /></div>` : ''}\n <slot></slot>\n ${this.hasAttribute('data-total') ? `<div class=\"card__total\">${this.getAttribute('data-total')}</div>` : ''}\n </div>\n ${this.hasAttribute('data-add-link') ? `<button class=\"btn btn-compact btn-secondary fa-plus\">Add property</button>` : ''}\n <slot name=\"checkbox\"></slot>\n <div class=\"card__footer\">\n <slot name=\"footer\"></slot>\n ${this.hasAttribute('data-cta') ? `<span class=\"link d-inline-block pt-0 mb-0\">${this.getAttribute('data-cta')}</span>` : ''}\n </div>\n </div>\n `;\n this.shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('cardGlobal'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"cardGlobal\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n this.classList.add('loaded');\n // Mimic clicking the parent node so the focus and target events can be on the card\n const parentNode = this.parentNode.closest('a, button, label');\n const card = this.shadowRoot.querySelector('.card');\n const btnCompact = this.shadowRoot.querySelector('.btn-compact');\n parentNode.setAttribute('tabindex', '-1');\n if (parentNode.matches('label[for]')) {\n let isChecked = document.getElementById(parentNode.getAttribute('for')).checked;\n if (isChecked)\n card.classList.add('checked');\n else\n card.classList.remove('checked');\n }\n // Click event down\n this.addEventListener('click', (event) => {\n let clickEvent = new Event('click');\n card.dispatchEvent(clickEvent);\n });\n card.addEventListener('click', (event) => {\n if (parentNode.matches('label[for]')) {\n event.stopPropagation();\n event.preventDefault();\n const input = document.getElementById(parentNode.getAttribute('for'));\n const inputName = input.getAttribute('name');\n const inputID = input.getAttribute('id');\n // Mimic radio button functionality\n const inputs = Array.from(document.querySelectorAll(`[name=\"${inputName}\"][type=\"radio\"]:not([id=\"${inputID}\"])`));\n inputs.forEach((input, index) => {\n const otherCard = document.querySelector(`[for=\"${input.getAttribute('id')}\"] iam-card`);\n otherCard.dispatchEvent(new Event('inactive'));\n });\n parentNode.click();\n let isChecked = input.checked;\n if (isChecked)\n card.classList.add('checked');\n else\n card.classList.remove('checked');\n }\n });\n this.addEventListener('inactive', (event) => {\n card.classList.remove('checked');\n });\n card.addEventListener('keydown', (event) => {\n switch (event.keyCode) {\n case 32:\n case 13:\n if (parentNode.matches('label[for]')) {\n event.stopPropagation();\n event.preventDefault();\n const input = document.getElementById(parentNode.getAttribute('for'));\n const inputName = input.getAttribute('name');\n const inputID = input.getAttribute('id');\n const inputs = Array.from(document.querySelectorAll(`[name=\"${inputName}\"]:not([id=\"${inputID}\"])`));\n inputs.forEach((input, index) => {\n const otherCard = document.querySelector(`[for=\"${input.getAttribute('id')}\"] iam-card`);\n otherCard.dispatchEvent(new Event('inactive'));\n });\n parentNode.click();\n let isChecked = input.checked;\n if (isChecked)\n card.classList.add('checked');\n else\n card.classList.remove('checked');\n }\n else {\n parentNode.click();\n }\n break;\n default:\n break;\n }\n });\n if (btnCompact) {\n let addLocation = this.getAttribute('data-add-link');\n btnCompact.addEventListener('click', (event) => {\n event.stopPropagation();\n event.preventDefault();\n window.location = addLocation;\n });\n }\n }\n static get observedAttributes() {\n return [\"data-total\", \"class\"];\n }\n attributeChangedCallback(attrName, oldVal, newVal) {\n switch (attrName) {\n case \"data-total\": {\n if (this.shadowRoot.querySelector('.card__total'))\n this.shadowRoot.querySelector('.card__total').innerHTML = newVal;\n break;\n }\n case \"class\": {\n let classList = this.classList.toString();\n if (this.querySelector('[class*=\"fa-\"]'))\n classList += ' card--has-icon';\n this.shadowRoot.querySelector('.card').setAttribute('class', `card ${classList}`);\n break;\n }\n }\n }\n}\nexport default iamCard;\n"],"names":["iamCard","classList","assetLocation","coreCSS","template","parentNode","card","btnCompact","event","clickEvent","input","inputName","inputID","index","addLocation","attrName","oldVal","newVal"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"collapsible side menu"});class s extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const e=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${e}/css/core.min.css`,n=document.createElement("template");n.innerHTML=`
|
|
5
5
|
<style class="styles">
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/function h(c,o){const r=o.querySelector(".files"),l=o.querySelector(".drop-area"),t=c.querySelector("input"),u=c.hasAttribute("data-maxsize")?c.getAttribute("data-maxsize"):0,a=t.cloneNode();l.append(a),o.addEventListener("click",e=>{e&&e.target instanceof HTMLElement&&e.target.closest(".btn-primary")&&(e.target.closest(".btn-primary"),(t.hasAttribute("multiple")?a:t).click())}),o.addEventListener("click",e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest(".files button")){const i=new DataTransfer,{files:d}=t,p=e.target.closest(".files button");for(let n=0;n<d.length;n++){const s=d[n];s.name!=p.getAttribute("data-file")&&i.items.add(s)}t.files=i.files;const m=new Event("change");t.dispatchEvent(m)}}),a.addEventListener("change",e=>{if(t.hasAttribute("multiple")){const d=[...t.files,...a.files];let p=[];const m=new DataTransfer;for(let n=0;n<d.length;n++){const s=d[n],f=s.size/1e3;!p.includes(s.name)&&(u==0||f<u)&&m.items.add(s),p.push(s.name)}t.files=m.files}else t.files=a.files;const i=new Event("change");t.dispatchEvent(i)}),a.addEventListener("dragenter",e=>{a.classList.add("focus")}),a.addEventListener("dragleave",e=>{a.classList.remove("focus")}),a.addEventListener("drop",e=>{a.classList.remove("focus")}),t.addEventListener("change",e=>{r.innerHTML="";for(const i of t.files)r.innerHTML+=`<span class="file">${i.name} <button data-file="${i.name}">Remove</button></span>`})}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"fileupload"});class b extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const o=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",r=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${o}/css/core.min.css`,l=document.createElement("template");l.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/function r(s,t){n(s,t)}function n(s,t){var e;t.addEventListener("keyup",a=>{clearTimeout(e),e=setTimeout(function(){o(s,t.value)},500)}),t.addEventListener("change",a=>{clearTimeout(e),o(s,t.value)})}const o=function(s,t){Array.from(s.querySelectorAll(":scope > li")).forEach((e,a)=>{let i=e.textContent.toLowerCase();e.classList.add("d-none"),i.includes(t.toLowerCase())&&e.classList.remove("d-none")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Filtered list",value:t})};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"filterlist"});class l extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${t}/css/core.min.css`,a=document.createElement("template");a.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"header"});class o extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${t}/css/core.min.css`,a=document.createElement("template");a.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -136,6 +136,9 @@ class iamNav extends HTMLElement {
|
|
|
136
136
|
}, false);
|
|
137
137
|
}
|
|
138
138
|
});
|
|
139
|
+
this.querySelectorAll('details').forEach(function (element) {
|
|
140
|
+
element.classList.add('details--revert');
|
|
141
|
+
});
|
|
139
142
|
// Has secondary link
|
|
140
143
|
if (this.querySelector('a[slot="secondary"]')) {
|
|
141
144
|
menu.classList.add('has-secondary');
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"nav"});class v extends HTMLElement{constructor(){super();const s=this.attachShadow({mode:"open"}),n=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",e=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${n}/css/core.min.css`,i=document.createElement("template");i.innerHTML=`
|
|
5
5
|
<style class="styles">
|
|
6
6
|
@import "${e}";
|
|
7
|
-
:host{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:center !important}.btn-menu{padding:0;margin:0 0 0 2rem;text-align:center;height:3rem;padding-block:0.75rem;line-height:1.5rem;overflow:hidden;position:relative;background:none;border:none;width:1.5rem;text-indent:-1000%;color:var(--colour-brand)}.btn-menu i{font-size:1.5rem;line-height:1.5rem;position:absolute;text-indent:0px;width:1.5rem;text-align:center;top:0.75rem;right:0;margin:0 !important;transition:none !important}.btn-menu i+i{display:none}.btn-menu[aria-expanded] i{display:none}.btn-menu[aria-expanded] i+i{display:inline}@media screen and (max-width: 62em){.btn-menu>.btn{display:contents;display:contents;color:inherit !important;padding:0 !important;margin:0;font-weight:normal !important;line-height:inherit;font-size:inherit;transition:none !important}}@media screen and (min-width: 36em){.btn-menu{margin:0 0 0 3rem;width:auto;padding-right:1.875rem;text-indent:0}.btn-menu[aria-expanded]{text-indent:-1000%}}@media screen and (min-width: 62em){.btn-menu{width:fit-content;height:auto;margin:0 0 0 3rem;padding:0 !important;text-indent:0;padding-right:0 !important}.btn-menu[aria-expanded]{text-indent:0}.btn-menu .btn{margin:0 !important;display:flex}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){.btn-menu .btn{--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}.btn-menu .btn .text-primary{color:var(--colour-primary) !important}}@media screen and (min-width: 62em){.btn-menu .btn span{order:2}.btn-menu .btn i[class*=fa-]{position:relative;position:static;vertical-align:bottom;display:inline-block;font-size:1.2rem;margin-right:1rem !important}.btn-menu .btn i[class*=fa-]+i[class*=fa-]{display:none}}:host(.bg-primary) .btn:is(:hover,:focus){color:var(--colour-inverted)}@media screen and (max-width: 62em){:host>.container{display:contents}.menu__outer{position:absolute;top:6rem;left:0;width:100%;height:calc(100vh - 6rem);overflow:hidden;pointer-events:none;transition:background .5s}.menu__outer:has(.menu.open){background:rgba(0,0,0,.2);backdrop-filter:blur(2px)}.menu::-webkit-scrollbar{width:6px}.menu::-webkit-scrollbar-track{border:0 !important}.menu::-webkit-scrollbar-thumb{border:0 !important}.menu{overscroll-behavior:contain;width:calc(23.4375rem - var(--scrollbar-width));background-color:var(--colour-canvas-2);position:absolute;height:calc(100vh - 6rem);left:100%;top:0;padding:0 1.5rem 0 1.5rem;z-index:var(--index-menu);overflow:auto;transition:all 1s ease-out;display:flex;flex-direction:column;flex-wrap:nowrap}.menu>*{flex-shrink:0}}@media screen and (max-width: 62em)and (prefers-color-scheme: dark){.menu{--colour-link: var(--colour-white);--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (max-width: 62em)and (prefers-color-scheme: light){.menu{background-color:var(--colour-white);--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}.menu .text-primary{color:var(--colour-primary) !important}}@media screen and (max-width: 62em)and (forced-colors: active){.menu{outline:1px solid #fff}}@media screen and (max-width: 62em){.menu:before{content:"";position:absolute;display:block;top:0;left:0;width:100%;border-top:2px solid var(--colour-border);z-index:1}.menu.open{left:calc(100% - (23.4375rem - var(--scrollbar-width)));-webkit-box-shadow:0 6px 12px 0px rgba(0,0,0,.2);box-shadow:0 6px 12px 0px rgba(0,0,0,.2);pointer-events:all}.menu.closed *{display:none !important}.menu__secondary{display:none}.has-secondary .menu__secondary{display:block;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:3rem !important;flex-grow:1;position:relative}}@media screen and (max-width: 62em)and (prefers-color-scheme: light){.has-secondary .menu__secondary{background-color:#eee}}@media screen and (max-width: 62em){.has-secondary .menu__secondary .container{display:contents}::slotted(a:not([slot=logo]):not(.btn-compact)){display:block !important;line-height:1.25rem !important;padding:1.5rem 0 !important;margin:0 !important;flex-shrink:0;font-size:1rem !important;font-weight:normal !important}::slotted(a:not([slot=logo]):not(.btn-compact)):after{content:"";display:block;height:2px;width:100% !important;background-color:var(--colour-border) !important;top:calc(100% - 2px) !important}*:is(.has-search,.has-actions) .menu__primary{display:block;padding-bottom:3rem}.menu:not(.has-secondary) .menu__primary{display:block;padding-bottom:3rem}::slotted(.btn:not(.btn-compact)){display:block !important;margin:0 0 1.5rem 0 !important;width:100% !important;max-width:100% !important;text-align:center !important;flex-shrink:0}.has-actions slot[name=actions]{display:block;padding-bottom:1.5rem}slot[name=actions]::slotted(.btn){margin-top:0 !important}.dialog__wrapper{width:100%;margin:0 0 3rem 0 !important;flex-shrink:0}.dialog__wrapper>.btn{display:none}.dialog__wrapper dialog{display:contents}}@media screen and (max-width: 62em)and (min-width: 36em){.menu{padding-right:2.5rem !important}.has-secondary .menu__secondary{margin-right:-2.5rem !important;padding-right:2.5rem !important}.has-secondary .menu__secondary:before{width:calc(100% - 4rem) !important}::slotted(.btn){width:auto !important}}@media screen and (min-width: 62em){:host{padding-block:0 !important}:host>.container{padding-block:1.5rem !important;padding-inline:0 !important;max-width:100%;display:flex;flex-wrap:nowrap;align-items:center}:host>.container:has(.has-secondary){padding-top:4rem !important}:host>.container>*{margin-bottom:0 !important}.btn-menu{display:none}.buttons-holder{display:contents}.buttons-holder .btn-menu{display:inline-block;order:2}.menu,.menu__outer,.menu__primary{display:contents}.menu__secondary{display:none}.has-secondary .menu__secondary{background-color:var(--colour-canvas-2);display:block;position:absolute;top:0;left:0;width:100%}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){.has-secondary .menu__secondary{background-color:#eee;--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}.has-secondary .menu__secondary .text-primary{color:var(--colour-primary) !important}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){.has-secondary .menu__secondary{--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (min-width: 62em){.has-secondary .menu__secondary .container{margin-left:auto;margin-right:auto;padding:var(--container-padding) !important;padding-top:0.5rem !important;padding-bottom:0.5rem !important;text-align:right}::slotted(a[slot=secondary]){font-size:0.875rem !important}::slotted(a[slot=secondary]):after{top:calc(100% - .25em) !important}::slotted(a:not([slot=logo])),::slotted(.btn){margin-bottom:0 !important;margin-right:0 !important}::slotted(a:not([slot=logo]):not(.btn-compact)){font-size:1rem !important;font-weight:normal !important}::slotted(a:not([slot=logo]):not(.btn-compact)):after{display:none}::slotted(a:not([slot=logo]):not([slot=dual])){margin-left:2rem !important}::slotted(.btn-primary){margin-left:3rem !important}.has-actions slot[name=actions]{display:block;padding-left:3rem}slot[name=actions]::slotted(.btn){margin-left:0.75rem !important}:host([data-search]) slot[name=actions]{padding-left:0 !important}#search-wrapper{margin-left:1.5rem !important;position:static}#search-dialog[open]{position:absolute;top:auto;bottom:0;left:0;width:100%;padding-block:1.5rem;padding-inline:0;background-color:rgba(0,0,0,0);text-align:right;border-radius:0;box-shadow:none}#search-dialog[open] .container{padding:var(--container-padding);padding-bottom:0}:host(.search-open){background:#e6eaec !important}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){:host(.search-open){background:var(--colour-canvas-2) !important}}@media screen and (min-width: 62em){:host(.search-open) .buttons-holder,:host(.search-open) #search-button{display:none}:host(.search-open.bg-primary){background:var(--colour-primary) !important}:host(.search-open.bg-primary) .suffix,:host(.search-open.bg-primary) #search{border:2px solid #b3c1c5;color:#fff}:host(.search-open.bg-primary) #search{border-right:0}.backdrop{content:"";display:block;position:absolute;top:100%;left:0;height:calc(100vh - var(--nav-height));width:100%;z-index:-1;pointer-events:none;transition:background .5s}.backdrop.show{pointer-events:all;background:rgba(0,0,0,.2);backdrop-filter:blur(2px)}}::slotted(.nav--menu){pointer-events:all;overscroll-behavior:contain;width:calc(23.4375rem - var(--scrollbar-width));background-color:var(--colour-canvas-2);position:absolute;height:calc(100vh - 6rem);left:100%;top:0;padding:0 1.5rem 0 1.5rem;z-index:var(--index-menu);overflow:auto;transition:all 1s ease-out;display:flex;flex-direction:column;flex-wrap:nowrap}::slotted(.nav--menu)>*{flex-shrink:0}@media screen and (prefers-color-scheme: dark){::slotted(.nav--menu){--colour-link: var(--colour-white);--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (prefers-color-scheme: light){::slotted(.nav--menu){background-color:var(--colour-white);--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}::slotted(.nav--menu) .text-primary{color:var(--colour-primary) !important}}@media(forced-colors: active){::slotted(.nav--menu){outline:1px solid #fff}}::slotted(.nav--menu):before{display:block;width:calc(100% + 3rem);border-top:2px solid var(--colour-border);z-index:1;padding:1.5rem 1.5rem;margin:0 -1.5rem;font-family:var(--font-heading);font-style:normal;font-weight:var(--heading-weight);color:var(--colour-heading);clear:both;font-size:1.75rem;line-height:2.25rem;max-width:var(--content-max-width)}@media screen and (min-width: 36em){::slotted(.nav--menu):before{font-size:2rem;line-height:2.5rem;margin-right:-2.5rem;padding-right:2.5rem;width:calc(100% + 4rem)}}@media screen and (min-width: 36em){::slotted(.nav--menu){padding-right:2.5rem !important}}@media screen and (min-width: 62em){::slotted(.nav--menu){height:calc(100vh - var(--nav-height));top:var(--nav-height)}}slot[name=menus]{position:absolute;top:0;right:0;display:block;height:100vh;overflow:hidden;pointer-events:none;width:calc(23.4375rem - var(--scrollbar-width))}::slotted(.nav--menu[data-open-title]):before{content:attr(data-open-title)}::slotted(.nav--menu.open){left:calc(100% - (23.4375rem - var(--scrollbar-width)));-webkit-box-shadow:0 6px 12px 0px rgba(0,0,0,.2);box-shadow:0 6px 12px 0px rgba(0,0,0,.2);pointer-events:all}@media screen and (max-width: 62em){:host(.open) .menu__outer{background:rgba(0,0,0,.2);backdrop-filter:blur(2px)}}@media screen and (min-width: 62em){:host(.nav--md-compressed) .buttons-holder button{margin-left:1.5rem !important}:host(.nav--md-compressed) .btn-menu .btn i[class*=fa-]{margin-right:.5rem !important;margin-left:-0.5rem !important}:host(.nav--md-compressed) .btn-menu .btn{--btn-padding-inline: 2.5rem}:host(.nav--md-compressed) ::slotted(a:not([slot=logo]):not([slot=secondary])){margin-left:1.5rem !important}}@media screen and (min-width: 62em){:host(.nav--btn-compact:not(.nav--large)) .btn-menu .btn{padding:.5rem !important}:host(.nav--btn-compact:not(.nav--large)) .btn-menu .btn i{margin-right:0 !important}:host(.nav--btn-compact:not(.nav--large)) .btn-menu .btn span{display:none}}@media screen and (min-width: 62em)and (max-width: 90em){:host(.nav--btn-compact.nav--large) .btn-menu .btn{padding:.5rem !important}:host(.nav--btn-compact.nav--large) .btn-menu .btn i{margin-right:0 !important}:host(.nav--btn-compact.nav--large) .btn-menu .btn span{display:none}}@media screen and (max-width: 62em){:host(.nav--dual-buttons) slot[name=dual]{padding-block:1.5rem;display:block}}@media screen and (min-width: 62em){:host(.nav--dual-buttons) slot[name=dual]{display:flex;margin-left:auto;flex-direction:row-reverse}}/*# sourceMappingURL=assets/css/components/nav.css.map */
|
|
7
|
+
:host{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:center !important}.btn-menu{padding:0;margin:0 0 0 2rem;text-align:center;height:3rem;padding-block:0.75rem;line-height:1.5rem;overflow:hidden;position:relative;background:none;border:none;width:1.5rem;text-indent:-1000%;color:var(--colour-brand)}.btn-menu i{font-size:1.5rem;line-height:1.5rem;position:absolute;text-indent:0px;width:1.5rem;text-align:center;top:0.75rem;right:0;margin:0 !important;transition:none !important}.btn-menu i+i{display:none}.btn-menu[aria-expanded] i{display:none}.btn-menu[aria-expanded] i+i{display:inline}@media screen and (max-width: 62em){.btn-menu>.btn{display:contents;display:contents;color:inherit !important;padding:0 !important;margin:0;font-weight:normal !important;line-height:inherit;font-size:inherit;transition:none !important}}@media screen and (min-width: 36em){.btn-menu{margin:0 0 0 3rem;width:auto;padding-right:1.875rem;text-indent:0}.btn-menu[aria-expanded]{text-indent:-1000%}}@media screen and (min-width: 62em){.btn-menu{width:fit-content;height:auto;margin:0 0 0 3rem;padding:0 !important;text-indent:0;padding-right:0 !important}.btn-menu[aria-expanded]{text-indent:0}.btn-menu .btn{margin:0 !important;display:flex}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){.btn-menu .btn{--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}.btn-menu .btn .text-primary{color:var(--colour-primary) !important}}@media screen and (min-width: 62em){.btn-menu .btn span{order:2}.btn-menu .btn i[class*=fa-]{position:relative;position:static;vertical-align:bottom;display:inline-block;font-size:1.2rem;margin-right:1rem !important}.btn-menu .btn i[class*=fa-]+i[class*=fa-]{display:none}}:host(.bg-primary) .btn:is(:hover,:focus){color:var(--colour-inverted)}@media screen and (max-width: 62em){:host>.container{display:contents}.menu__outer{position:absolute;top:6rem;left:0;width:100%;height:calc(100vh - 6rem);overflow:hidden;pointer-events:none;transition:background .5s}.menu__outer:has(.menu.open){background:rgba(0,0,0,.2);backdrop-filter:blur(2px)}.menu::-webkit-scrollbar{width:6px}.menu::-webkit-scrollbar-track{border:0 !important}.menu::-webkit-scrollbar-thumb{border:0 !important}.menu{overscroll-behavior:contain;width:calc(23.4375rem - var(--scrollbar-width));background-color:var(--colour-canvas-2);position:absolute;height:calc(100vh - 6rem);left:100%;top:0;padding:0 1.5rem 0 1.5rem;z-index:var(--index-menu);overflow:auto;transition:all 1s ease-out;display:flex;flex-direction:column;flex-wrap:nowrap}.menu>*{flex-shrink:0}}@media screen and (max-width: 62em)and (prefers-color-scheme: dark){.menu{--colour-link: var(--colour-white);--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (max-width: 62em)and (prefers-color-scheme: light){.menu{background-color:var(--colour-white);--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}.menu .text-primary{color:var(--colour-primary) !important}}@media screen and (max-width: 62em)and (forced-colors: active){.menu{outline:1px solid #fff}}@media screen and (max-width: 62em){.menu:before{content:"";position:absolute;display:block;top:0;left:0;width:100%;border-top:2px solid var(--colour-border);z-index:1}.menu.open{left:calc(100% - (23.4375rem - var(--scrollbar-width)));-webkit-box-shadow:0 6px 12px 0px rgba(0,0,0,.2);box-shadow:0 6px 12px 0px rgba(0,0,0,.2);pointer-events:all}.menu.closed *{display:none !important}.menu__secondary{display:none}.has-secondary .menu__secondary{display:block;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:3rem !important;flex-grow:1;position:relative}}@media screen and (max-width: 62em)and (prefers-color-scheme: light){.has-secondary .menu__secondary{background-color:#eee}}@media screen and (max-width: 62em){.has-secondary .menu__secondary .container{display:contents}::slotted(a:not([slot=logo]):not(.btn-compact):not(.btn-primary)){display:block !important;line-height:1.25rem !important;padding:1.5rem 0 !important;margin:0 !important;flex-shrink:0;font-size:1rem !important;font-weight:normal !important}::slotted(a:not([slot=logo]):not(.btn-compact):not(.btn-primary)):after{content:"";display:block;height:2px;width:100% !important;background-color:var(--colour-border) !important;top:calc(100% - 2px) !important}*:is(.has-search,.has-actions) .menu__primary{display:block;padding-bottom:3rem}.menu:not(.has-secondary) .menu__primary{display:block;padding-bottom:3rem}::slotted(.btn:not(.btn-compact):not(.btn-primary)){display:block !important;margin:0 0 1.5rem 0 !important;width:100% !important;max-width:100% !important;text-align:center !important;flex-shrink:0}.has-actions slot[name=actions]{display:block;padding-bottom:1.5rem}slot[name=actions]::slotted(.btn){margin-top:0 !important}.dialog__wrapper{width:100%;margin:0 0 3rem 0 !important;flex-shrink:0}.dialog__wrapper>.btn{display:none}.dialog__wrapper dialog{display:contents}}@media screen and (max-width: 62em)and (min-width: 36em){.menu{padding-right:2.5rem !important}.has-secondary .menu__secondary{margin-right:-2.5rem !important;padding-right:2.5rem !important}.has-secondary .menu__secondary:before{width:calc(100% - 4rem) !important}::slotted(.btn){width:auto !important}}@media screen and (min-width: 62em){:host{padding-block:0 !important}:host>.container{padding-block:1.5rem !important;padding-inline:0 !important;max-width:100%;display:flex;flex-wrap:nowrap;align-items:center}:host>.container:has(.has-secondary){padding-top:4rem !important}:host>.container>*{margin-bottom:0 !important}.btn-menu{display:none}.buttons-holder{display:contents}.buttons-holder .btn-menu{display:inline-block;order:2}.menu,.menu__outer,.menu__primary{display:contents}.menu__secondary{display:none}.has-secondary .menu__secondary{background-color:var(--colour-canvas-2);display:block;position:absolute;top:0;left:0;width:100%}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){.has-secondary .menu__secondary{background-color:#eee;--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}.has-secondary .menu__secondary .text-primary{color:var(--colour-primary) !important}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){.has-secondary .menu__secondary{--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (min-width: 62em){.has-secondary .menu__secondary .container{margin-left:auto;margin-right:auto;padding:var(--container-padding) !important;padding-top:0.5rem !important;padding-bottom:0.5rem !important;text-align:right}::slotted(a[slot=secondary]){font-size:0.875rem !important}::slotted(a[slot=secondary]):after{top:calc(100% - .25em) !important}::slotted(a:not([slot=logo])),::slotted(.btn){margin-bottom:0 !important;margin-right:0 !important}::slotted(a:not([slot=logo]):not(.btn-compact):not(.btn-primary)){font-size:1rem !important;font-weight:normal !important}::slotted(a:not([slot=logo]):not(.btn-compact):not(.btn-primary)):after{display:none}::slotted(a:not([slot=logo]):not([slot=dual])){margin-left:2rem !important}::slotted(.btn-primary){margin-left:3rem !important}.has-actions slot[name=actions]{display:block;padding-left:3rem}slot[name=actions]::slotted(.btn){margin-left:0.75rem !important}:host([data-search]) slot[name=actions]{padding-left:0 !important}#search-wrapper{margin-left:1.5rem !important;position:static}#search-dialog[open]{position:absolute;top:auto;bottom:0;left:0;width:100%;padding-block:1.5rem;padding-inline:0;background-color:rgba(0,0,0,0);text-align:right;border-radius:0;box-shadow:none}#search-dialog[open] .container{padding:var(--container-padding);padding-bottom:0}:host(.search-open){background:#e6eaec !important}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){:host(.search-open){background:var(--colour-canvas-2) !important}}@media screen and (min-width: 62em){:host(.search-open) .buttons-holder,:host(.search-open) #search-button{display:none}:host(.search-open.bg-primary){background:var(--colour-primary) !important}:host(.search-open.bg-primary) .suffix,:host(.search-open.bg-primary) #search{border:2px solid #b3c1c5;color:#fff}:host(.search-open.bg-primary) #search{border-right:0}.backdrop{content:"";display:block;position:absolute;top:100%;left:0;height:calc(100vh - var(--nav-height));width:100%;z-index:-1;pointer-events:none;transition:background .5s}.backdrop.show{pointer-events:all;background:rgba(0,0,0,.2);backdrop-filter:blur(2px)}}::slotted(.nav--menu){pointer-events:all;overscroll-behavior:contain;width:calc(23.4375rem - var(--scrollbar-width));background-color:var(--colour-canvas-2);position:absolute;height:calc(100vh - 6rem);left:100%;top:0;padding:0 1.5rem 0 1.5rem;z-index:var(--index-menu);overflow:auto;transition:all 1s ease-out;display:flex;flex-direction:column;flex-wrap:nowrap}::slotted(.nav--menu)>*{flex-shrink:0}@media screen and (prefers-color-scheme: dark){::slotted(.nav--menu){--colour-link: var(--colour-white);--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (prefers-color-scheme: light){::slotted(.nav--menu){background-color:var(--colour-white);--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}::slotted(.nav--menu) .text-primary{color:var(--colour-primary) !important}}@media(forced-colors: active){::slotted(.nav--menu){outline:1px solid #fff}}::slotted(.nav--menu):before{display:block;width:calc(100% + 3rem);border-top:2px solid var(--colour-border);z-index:1;padding:1.5rem 1.5rem;margin:0 -1.5rem;font-family:var(--font-heading);font-style:normal;font-weight:var(--heading-weight);color:var(--colour-heading);clear:both;font-size:1.75rem;line-height:2.25rem;max-width:var(--content-max-width)}@media screen and (min-width: 36em){::slotted(.nav--menu):before{font-size:2rem;line-height:2.5rem;margin-right:-2.5rem;padding-right:2.5rem;width:calc(100% + 4rem)}}@media screen and (min-width: 36em){::slotted(.nav--menu){padding-right:2.5rem !important}}@media screen and (min-width: 62em){::slotted(.nav--menu){height:calc(100vh - var(--nav-height));top:var(--nav-height)}}slot[name=menus]{position:absolute;top:0;right:0;display:block;height:100vh;overflow:hidden;pointer-events:none;width:calc(23.4375rem - var(--scrollbar-width))}::slotted(.nav--menu[data-open-title]):before{content:attr(data-open-title)}::slotted(.nav--menu.open){left:calc(100% - (23.4375rem - var(--scrollbar-width)));-webkit-box-shadow:0 6px 12px 0px rgba(0,0,0,.2);box-shadow:0 6px 12px 0px rgba(0,0,0,.2);pointer-events:all}@media screen and (max-width: 62em){:host(.open) .menu__outer{background:rgba(0,0,0,.2);backdrop-filter:blur(2px)}}@media screen and (min-width: 62em){:host(.nav--md-compressed) .buttons-holder button{margin-left:1.5rem !important}:host(.nav--md-compressed) .btn-menu .btn i[class*=fa-]{margin-right:.5rem !important;margin-left:-0.5rem !important}:host(.nav--md-compressed) .btn-menu .btn{--btn-padding-inline: 2.5rem}:host(.nav--md-compressed) ::slotted(a:not([slot=logo]):not([slot=secondary])){margin-left:1.5rem !important}}@media screen and (min-width: 62em){:host(.nav--btn-compact:not(.nav--large)) .btn-menu .btn{padding:.5rem !important}:host(.nav--btn-compact:not(.nav--large)) .btn-menu .btn i{margin-right:0 !important}:host(.nav--btn-compact:not(.nav--large)) .btn-menu .btn span{display:none}}@media screen and (min-width: 62em)and (max-width: 90em){:host(.nav--btn-compact.nav--large) .btn-menu .btn{padding:.5rem !important}:host(.nav--btn-compact.nav--large) .btn-menu .btn i{margin-right:0 !important}:host(.nav--btn-compact.nav--large) .btn-menu .btn span{display:none}}@media screen and (max-width: 62em){:host(.nav--dual-buttons) slot[name=dual]{padding-block:1.5rem;display:block}}@media screen and (min-width: 62em){:host(.nav--dual-buttons) slot[name=dual]{display:flex;margin-left:auto;flex-direction:row-reverse}}/*# sourceMappingURL=assets/css/components/nav.css.map */
|
|
8
8
|
|
|
9
9
|
</style>
|
|
10
10
|
<style class="doc-styles">
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
</div>
|
|
36
36
|
<div class="backdrop" part="backdrop"></div>
|
|
37
37
|
`,s.appendChild(i.content.cloneNode(!0)),document.getElementById("navGlobal")||document.head.insertAdjacentHTML("beforeend",`<style id="navGlobal">body:has(iam-nav.open:not(.nav--sticky):not(.nav--xs-sticky)){max-height:100vh;overflow:hidden}body{--nav-height: 6rem;--sticky-padding: 0px}body:has(iam-nav a[slot=secondary]){--nav-height: 8.5rem}body:has(iam-nav.nav--sticky){--sticky-padding: var(--nav-height)}nav:has(iam-nav){min-height:6rem;display:block;position:relative}nav:has(iam-nav) iam-nav{position:absolute;top:0;left:0;width:100%;z-index:var(--index-menu)}@media screen and (min-width: 62em){nav:has(iam-nav a[slot=secondary]){min-height:8.5rem}}nav:has(iam-nav.nav--sticky) iam-nav{position:fixed}@media screen and (max-width: 36em){body:has(iam-nav.open:not(.nav--xs-sticky)){max-height:100vh;overflow:hidden}nav:has(iam-nav.nav--xs-sticky) iam-nav{position:fixed}}@media screen and (min-width: 36em){body:has(iam-nav.open:not(.nav--sticky)){max-height:100vh;overflow:hidden}}iam-nav{--nav-height: 6rem;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%}iam-nav:has(a[slot=secondary]){--nav-height: 8.5rem}iam-nav .brand{font-size:3rem;height:3rem;padding:0;text-decoration:none;min-width:min(var(--svg-width),14rem);margin-right:auto}iam-nav .brand img{height:100%;width:auto}iam-nav a:not([slot=logo]):not(.btn):not(:has(iam-card)){text-decoration:none}iam-nav a:not([slot=logo]):not(.btn):not(:has(iam-card)) .badge{position:absolute;right:0;top:50%;margin-top:-0.8rem}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)}iam-nav a:not([slot=logo]):not(.btn):not(:has(iam-card)):active{text-decoration-color:#a2d393 !important}iam-nav a:not([slot=logo]):not(.btn):not(:has(iam-card)).selected,iam-nav a:not([slot=logo]):not(.btn):not(:has(iam-card))[aria-current=page]{text-decoration-color:var(--colour-info) !important}iam-nav details>summary{text-decoration:none}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)}iam-nav details>summary:active{text-decoration-color:#a2d393 !important}iam-nav details[open]>summary{text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;text-decoration-color:var(--colour-success)}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)}@media screen and (max-width: 62em){iam-nav details{background-color:var(--colour-canvas);margin-left:-1.5rem;margin-right:-1.5rem;padding-inline:1.5rem;width:auto;position:relative}}@media screen and (max-width: 62em)and (prefers-color-scheme: light){iam-nav details{background-color:#eee}}@media screen and (max-width: 62em){iam-nav details summary{background-color:var(--colour-white);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}}@media screen and (max-width: 62em)and (prefers-color-scheme: dark){iam-nav details summary{background-color:var(--colour-canvas-2)}}@media screen and (max-width: 62em){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:"Font Awesome 6 Pro";line-height:1em}iam-nav details[open]>summary:after{content:"\uF056";font-weight:bold}iam-nav details a{text-decoration:none;display:block;border:none;color:var(--colour-link);margin:0;margin-left:3rem;padding:1.5rem 0 1.5rem 0;font-size:1rem;line-height:1.5rem;min-height:1.5rem;position:relative;font-weight:normal}iam-nav details a:after{background:var(--colour-border) !important;top:calc(100% - 2px) !important;width:100% !important}iam-nav details a:has(iam-card){display:none !important}iam-nav details>div a:last-child{margin-bottom:0 !important}iam-nav details>div a:last-child:after{display:none}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}iam-nav details details:after{display:none}iam-nav details details summary{padding:0 1.5rem 1.5rem 3.5rem;position:relative}iam-nav details details summary:after{left:1.5rem;font-size:1rem;top:0.1875rem;transform:none;font-weight:400}iam-nav details a+details>summary{padding-top:1.5rem}iam-nav details a+details>summary:after{margin-top:1.5rem}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}}@media screen and (max-width: 62em)and (min-width: 36em){iam-nav details{padding-right:2.5rem;margin-right:-2.5rem}iam-nav details:after{width:calc(100% - 4rem)}iam-nav details summary{padding-right:2.5rem;margin-right:-2.5rem}iam-nav details summary:after{right:2.5rem}iam-nav details details[open]+details:before{padding-right:2.5rem;margin-right:-2.5rem}}@media screen and (min-width: 62em){iam-nav .nav--menu details{background-color:var(--colour-canvas);margin-left:-1.5rem;margin-right:-1.5rem;padding-inline:1.5rem;width:auto;position:relative;padding-right:2.5rem;margin-right:-2.5rem}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){iam-nav .nav--menu details{background-color:#eee}}@media screen and (min-width: 62em){iam-nav .nav--menu details summary{background-color:var(--colour-white);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}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){iam-nav .nav--menu details summary{background-color:var(--colour-canvas-2)}}@media screen and (min-width: 62em){iam-nav .nav--menu details summary:after{content:"\uF055";display:block;font-size:1.5rem;font-weight:300;position:absolute;top:1.5rem;right:1.5rem;font-family:"Font Awesome 6 Pro";line-height:1em}iam-nav .nav--menu details[open]>summary:after{content:"\uF056";font-weight:bold}iam-nav .nav--menu details a{text-decoration:none;display:block;border:none;color:var(--colour-link);margin:0;margin-left:3rem;padding:1.5rem 0 1.5rem 0;font-size:1rem;line-height:1.5rem;min-height:1.5rem;position:relative;font-weight:normal}iam-nav .nav--menu details a:after{background:var(--colour-border) !important;top:calc(100% - 2px) !important;width:100% !important}iam-nav .nav--menu details a:has(iam-card){display:none !important}iam-nav .nav--menu details>div a:last-child{margin-bottom:0 !important}iam-nav .nav--menu details>div a:last-child:after{display:none}iam-nav .nav--menu 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}iam-nav .nav--menu details:after{width:calc(100% - 4rem)}iam-nav .nav--menu details summary{padding-right:2.5rem;margin-right:-2.5rem}iam-nav .nav--menu details summary:after{right:2.5rem}}@media screen and (min-width: 62em){iam-nav>details,iam-nav *:not(.nav--menu)>details{width:auto}iam-nav>details>summary,iam-nav *:not(.nav--menu)>details>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}iam-nav>details>summary:after,iam-nav *:not(.nav--menu)>details>summary:after{content:"\uF078";display:block;font-size:1rem;font-weight:300;position:absolute;top:50%;transform:translate(0, -50%);right:0;font-family:"Font Awesome 6 Pro";line-height:1em}iam-nav>details:not(:first-child)>summary,iam-nav *:not(.nav--menu)>details:not(:first-child)>summary{margin-left:1.5rem}iam-nav>details div,iam-nav *:not(.nav--menu)>details div{display:none}iam-nav>details[open]>div,iam-nav *:not(.nav--menu)>details[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)}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){iam-nav>details[open]>div,iam-nav *:not(.nav--menu)>details[open]>div{background:var(--colour-white);--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: white;--colour-btn-action-hover-bg: var(--colour-light)}iam-nav>details[open]>div .text-primary,iam-nav *:not(.nav--menu)>details[open]>div .text-primary{color:var(--colour-primary) !important}}@media screen and (min-width: 62em)and (prefers-color-scheme: dark){iam-nav>details[open]>div,iam-nav *:not(.nav--menu)>details[open]>div{--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);--colour-btn-action-hover-bg: var(--colour-canvas-2)}}@media screen and (min-width: 62em){iam-nav>details[open]>div:has(details),iam-nav *:not(.nav--menu)>details[open]>div:has(details){background:var(--colour-canvas-2)}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){iam-nav>details[open]>div:has(details),iam-nav *:not(.nav--menu)>details[open]>div:has(details){background:#eee}}@media screen and (min-width: 62em){iam-nav>details[open]>div:has(details)>a,iam-nav *:not(.nav--menu)>details[open]>div:has(details)>a{display:inline-block !important;margin-right:2rem !important}iam-nav>details[open]>div:has(details)>a:first-child,iam-nav *:not(.nav--menu)>details[open]>div:has(details)>a:first-child{margin-right:0}iam-nav>details[open]>div:has(details)>a:after,iam-nav *:not(.nav--menu)>details[open]>div:has(details)>a:after{display:none !important}iam-nav>details[open]>div:has(details) a:has(iam-card),iam-nav *:not(.nav--menu)>details[open]>div:has(details) a:has(iam-card){display:none}iam-nav>details[open]>div:has(details) details,iam-nav *:not(.nav--menu)>details[open]>div:has(details) details{display:inline-block}iam-nav>details[open]>div:has(details) details summary,iam-nav *:not(.nav--menu)>details[open]>div:has(details) details summary{display:inline-block;margin-left:0 !important;margin-right:2rem}iam-nav>details[open]>div:has(details) details:first-child summary,iam-nav *:not(.nav--menu)>details[open]>div:has(details) details:first-child summary{margin-left:0}iam-nav>details[open]>div:not(:has(details)),iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)){background:var(--colour-canvas);padding-top:8rem;padding-bottom:4rem;columns:3;column-gap:6.875rem}}@media screen and (min-width: 62em)and (prefers-color-scheme: light){iam-nav>details[open]>div:not(:has(details)),iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)){background:var(--colour-white);--colour-canvas-2: white}}@media screen and (min-width: 62em){iam-nav>details[open]>div:not(:has(details))>a,iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details))>a{margin-right:0 !important;display:block;max-height:6rem}iam-nav>details[open]>div:not(:has(details))>a.double-height,iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details))>a.double-height{min-height:6rem}iam-nav>details[open]>div:not(:has(details)) a:has(iam-card),iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)) a:has(iam-card){display:inline-block}iam-nav>details[open]>div:not(:has(details)):before,iam-nav *:not(.nav--menu)>details[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}iam-nav>details[open]>div:not(:has(details)):has(iam-card),iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)):has(iam-card){column-gap:1rem}iam-nav>details[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card)),iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card)){margin-right:5.875rem !important}iam-nav>details[open]>div:not(:has(details)):has(iam-card) a:has(iam-card):after,iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)):has(iam-card) a:has(iam-card):after{display:none}iam-nav>details[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card))+a:has(iam-card),iam-nav *:not(.nav--menu)>details[open]>div:not(:has(details)):has(iam-card) a:not(:has(iam-card))+a:has(iam-card){break-before:column}iam-nav>details a:not([slot=logo]):not(.btn):not(:has(iam-card)),iam-nav *:not(.nav--menu)>details 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}iam-nav>details a:not([slot=logo]):not(.btn):not(:has(iam-card)):where(:hover,:focus,.selected,[aria-current=page]),iam-nav *:not(.nav--menu)>details 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)}iam-nav>details a:not([slot=logo]):not(.btn):not(:has(iam-card)):active,iam-nav *:not(.nav--menu)>details a:not([slot=logo]):not(.btn):not(:has(iam-card)):active{text-decoration-color:#a2d393 !important}iam-nav>details a:not([slot=logo]):not(.btn):not(:has(iam-card)).selected,iam-nav>details a:not([slot=logo]):not(.btn):not(:has(iam-card))[aria-current=page],iam-nav *:not(.nav--menu)>details a:not([slot=logo]):not(.btn):not(:has(iam-card)).selected,iam-nav *:not(.nav--menu)>details a:not([slot=logo]):not(.btn):not(:has(iam-card))[aria-current=page]{text-decoration-color:var(--colour-info)}iam-nav>details a:not([slot=logo]):not(.btn):not(:has(iam-card)):after,iam-nav *:not(.nav--menu)>details 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}iam-nav>details details>summary,iam-nav *:not(.nav--menu)>details details>summary{padding-right:0;background:rgba(0,0,0,0)}iam-nav>details details>summary:after,iam-nav *:not(.nav--menu)>details details>summary:after{display:none}iam-nav>details details:not(:first-child)>summary,iam-nav *:not(.nav--menu)>details details:not(:first-child)>summary{margin-left:2rem}nav:has(iam-nav.open){min-height:100vh !important;max-height:100vh;overflow:auto;margin-bottom:calc((100vh - var(--nav-height))*-1)}html:has(iam-nav.open:not(.demo-open)){overflow:hidden}}@media screen and (min-width: 80em){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){iam-nav.search-open>*:not([slot=logo]):not([slot=secondary]):not([slot=search]){display:none !important}}@media screen and (min-width: 62em){iam-nav:has([slot=dual]) .brand:has(~[slot=dual]){margin-right:1.5rem !important}iam-nav:has([slot=dual]) *:not([slot=dual]):has(+[slot=dual])+[slot=dual]{margin-left:auto !important}iam-nav:has([slot=dual]) .btn[slot=dual]{margin-left:0}iam-nav:has([slot=dual])::part(btn-menu){margin-left:1rem !important}}iam-nav>.dialog__wrapper .dialog--list a{font-size:1rem}@media screen and (max-width: 62em){iam-nav>.dialog__wrapper:not(.dialog--xs){width:100%}iam-nav>.dialog__wrapper:not(.dialog--xs) .btn-compact{display:none !important}iam-nav>.dialog__wrapper:not(.dialog--xs) .dialog--list{display:contents !important}iam-nav>.dialog__wrapper:not(.dialog--xs) .dialog--list a{font-size:1rem}iam-nav>.dialog__wrapper:not(.dialog--xs) .dialog--list a,iam-nav .btn-compact{--compact-size: 2rem;all:unset;display:block !important;font-size:0.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}iam-nav>.dialog__wrapper:not(.dialog--xs) .dialog--list a:where(:hover,:focus,.selected,[aria-current=page]),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)}iam-nav>.dialog__wrapper:not(.dialog--xs) .dialog--list a:before,iam-nav .btn-compact:before{display:inline-block;width:auto;position:static;margin-right:.5rem;font-size:.875rem !important;text-decoration:none !important}iam-nav>.dialog__wrapper:not(.dialog--xs) .dialog--list a:after,iam-nav .btn-compact:after{display:none}}iam-nav .nav--menu{outline:none !important}iam-nav .nav--menu::-webkit-scrollbar{width:6px}iam-nav .nav--menu::-webkit-scrollbar-track{border:0 !important}iam-nav .nav--menu::-webkit-scrollbar-thumb{border:0 !important}iam-nav .nav--menu hr{width:100% !important;border-top:2px solid var(--colour-border) !important}iam-nav .nav--menu a{display:block !important;line-height:1.25rem !important;padding:1.5rem 0 !important;margin:0 !important;flex-shrink:0;font-size:1rem !important;font-weight:normal !important}iam-nav .nav--menu a:not(.mb-0):not(:has(+a)){margin:0 0 2.25rem 0 !important}iam-nav .nav--menu a:has(+a){margin-bottom:0 !important}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}iam-nav .nav--menu>button{min-width:100%;text-align:center}iam-nav .nav--menu.closed *{display:none !important}/*# sourceMappingURL=assets/css/components/nav.global.css.map */
|
|
38
|
-
</style>`)}connectedCallback(){this.hasAttribute("data-css")&&this.shadowRoot.querySelector(".doc-styles").insertAdjacentHTML("beforeend",`@import "${this.getAttribute("data-css")}";`);const s=this.shadowRoot.querySelector(".btn-menu"),n=this.shadowRoot.querySelector(".menu"),e=this,i=this.shadowRoot.querySelector(".backdrop"),u=this.shadowRoot.querySelector(".buttons-holder");if(this.querySelectorAll(":scope > *").forEach(function(a){switch(a.tagName){case"BUTTON":a.hasAttribute("slot")||(a.setAttribute("slot","actions"),n.classList.add("has-actions"));break}if(a.classList.contains("nav--menu")&&a.hasAttribute("data-title")&&a.hasAttribute("data-icon")){const r=a.getAttribute("data-title"),l=a.getAttribute("data-icon"),o=document.createElement("button");o.setAttribute("slot",r),o.classList.add("btn-menu"),o.setAttribute("part","btn-menu"),o.innerHTML=`<span class="btn btn-primary"><span>${r}</span><i class="${l}"></i><i class="fa-regular fa-xmark-large"></i></span>`,u.insertAdjacentElement("beforeend",o);const m=o.querySelector(".btn-primary");a.setAttribute("slot","menus"),a.classList.contains("open")?(o.setAttribute("aria-expanded",!0),m.classList.toggle("active"),e.classList.add("open"),i.classList.add("show")):a.classList.add("closed"),o.addEventListener("click",function(h){h.preventDefault(),o.toggleAttribute("aria-expanded"),a.classList.toggle("open"),m.classList.toggle("active");let c=e.querySelector(":scope > details[open]");c&&c.removeAttribute("open"),a.classList.contains("open")?(n.classList.remove("open"),s.removeAttribute("aria-expanded"),setTimeout(function(){n.classList.add("closed")},1e3),e.classList.add("open"),i.classList.add("show"),a.classList.remove("closed")):(e.classList.remove("open"),i.classList.remove("show"),setTimeout(function(){a.classList.add("closed")},1e3)),e.querySelectorAll(".nav--menu.open").forEach(function(d){d!=a&&d.classList.remove("open")}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(d){d!=o&&(d.removeAttribute("aria-expanded"),d.querySelector(".btn-primary").classList.remove("active"))})},!1)}}),this.querySelector('a[slot="secondary"]')&&n.classList.add("has-secondary"),document.documentElement.style.setProperty("--scrollbar-width",window.innerWidth-document.documentElement.offsetWidth+"px"),s.addEventListener("click",function(a){a.preventDefault(),s.toggleAttribute("aria-expanded"),n.classList.toggle("open"),e.querySelectorAll(".nav--menu.open").forEach(function(t){t.classList.remove("open"),setTimeout(function(){t.classList.add("closed")},1e3)}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(t){t.removeAttribute("aria-expanded"),t.querySelector(".btn-primary").classList.remove("active")}),n.classList.contains("open")?(e.classList.add("open"),n.classList.remove("closed")):(e.classList.remove("open"),setTimeout(function(){n.classList.add("closed")},1e3))},!1),this.addEventListener("request-close",a=>{s.removeAttribute("aria-expanded"),n.classList.remove("open"),e.classList.remove("open")}),i.addEventListener("click",a=>{let t=this.querySelector("details[open] summary");t&&t.click(),e.querySelectorAll(".nav--menu.open").forEach(function(r){r.classList.remove("open")}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(r){r.removeAttribute("aria-expanded"),r.querySelector(".btn-primary").classList.remove("active")}),i.classList.remove("show")}),this.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("summary")&&window.innerWidth>992&&!a.target.closest(".nav--menu")){let r=a.target.closest("summary").closest("details"),l=r.parentNode;r.hasAttribute("open")?r.removeAttribute("open"):r.setAttribute("open","true"),e.querySelectorAll(".nav--menu.open").forEach(function(o){o.classList.remove("open"),setTimeout(function(){n.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")}),Array.from(l.querySelectorAll(":scope > details")).forEach((o,m)=>{o!=r&&o.removeAttribute("open")}),this.querySelectorAll(":scope > details[open]").length?(i.classList.add("show"),e.classList.add("open")):(i.classList.remove("show"),e.classList.remove("open")),a.preventDefault()}}),this.querySelectorAll("details").forEach(a=>{let t=a.querySelector("summary");a.querySelector(":Scope > div").setAttribute("data-title",t.textContent)}),this.querySelector('[slot="search"]')){n.classList.add("has-search");let a=this.shadowRoot.querySelector("#search-wrapper");a.classList.remove("d-none"),a.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>
|
|
38
|
+
</style>`)}connectedCallback(){this.hasAttribute("data-css")&&this.shadowRoot.querySelector(".doc-styles").insertAdjacentHTML("beforeend",`@import "${this.getAttribute("data-css")}";`);const s=this.shadowRoot.querySelector(".btn-menu"),n=this.shadowRoot.querySelector(".menu"),e=this,i=this.shadowRoot.querySelector(".backdrop"),u=this.shadowRoot.querySelector(".buttons-holder");if(this.querySelectorAll(":scope > *").forEach(function(a){switch(a.tagName){case"BUTTON":a.hasAttribute("slot")||(a.setAttribute("slot","actions"),n.classList.add("has-actions"));break}if(a.classList.contains("nav--menu")&&a.hasAttribute("data-title")&&a.hasAttribute("data-icon")){const r=a.getAttribute("data-title"),l=a.getAttribute("data-icon"),o=document.createElement("button");o.setAttribute("slot",r),o.classList.add("btn-menu"),o.setAttribute("part","btn-menu"),o.innerHTML=`<span class="btn btn-primary"><span>${r}</span><i class="${l}"></i><i class="fa-regular fa-xmark-large"></i></span>`,u.insertAdjacentElement("beforeend",o);const m=o.querySelector(".btn-primary");a.setAttribute("slot","menus"),a.classList.contains("open")?(o.setAttribute("aria-expanded",!0),m.classList.toggle("active"),e.classList.add("open"),i.classList.add("show")):a.classList.add("closed"),o.addEventListener("click",function(h){h.preventDefault(),o.toggleAttribute("aria-expanded"),a.classList.toggle("open"),m.classList.toggle("active");let c=e.querySelector(":scope > details[open]");c&&c.removeAttribute("open"),a.classList.contains("open")?(n.classList.remove("open"),s.removeAttribute("aria-expanded"),setTimeout(function(){n.classList.add("closed")},1e3),e.classList.add("open"),i.classList.add("show"),a.classList.remove("closed")):(e.classList.remove("open"),i.classList.remove("show"),setTimeout(function(){a.classList.add("closed")},1e3)),e.querySelectorAll(".nav--menu.open").forEach(function(d){d!=a&&d.classList.remove("open")}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(d){d!=o&&(d.removeAttribute("aria-expanded"),d.querySelector(".btn-primary").classList.remove("active"))})},!1)}}),this.querySelectorAll("details").forEach(function(a){a.classList.add("details--revert")}),this.querySelector('a[slot="secondary"]')&&n.classList.add("has-secondary"),document.documentElement.style.setProperty("--scrollbar-width",window.innerWidth-document.documentElement.offsetWidth+"px"),s.addEventListener("click",function(a){a.preventDefault(),s.toggleAttribute("aria-expanded"),n.classList.toggle("open"),e.querySelectorAll(".nav--menu.open").forEach(function(t){t.classList.remove("open"),setTimeout(function(){t.classList.add("closed")},1e3)}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(t){t.removeAttribute("aria-expanded"),t.querySelector(".btn-primary").classList.remove("active")}),n.classList.contains("open")?(e.classList.add("open"),n.classList.remove("closed")):(e.classList.remove("open"),setTimeout(function(){n.classList.add("closed")},1e3))},!1),this.addEventListener("request-close",a=>{s.removeAttribute("aria-expanded"),n.classList.remove("open"),e.classList.remove("open")}),i.addEventListener("click",a=>{let t=this.querySelector("details[open] summary");t&&t.click(),e.querySelectorAll(".nav--menu.open").forEach(function(r){r.classList.remove("open")}),e.shadowRoot.querySelectorAll(".buttons-holder .btn-menu[aria-expanded]").forEach(function(r){r.removeAttribute("aria-expanded"),r.querySelector(".btn-primary").classList.remove("active")}),i.classList.remove("show")}),this.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("summary")&&window.innerWidth>992&&!a.target.closest(".nav--menu")){let r=a.target.closest("summary").closest("details"),l=r.parentNode;r.hasAttribute("open")?r.removeAttribute("open"):r.setAttribute("open","true"),e.querySelectorAll(".nav--menu.open").forEach(function(o){o.classList.remove("open"),setTimeout(function(){n.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")}),Array.from(l.querySelectorAll(":scope > details")).forEach((o,m)=>{o!=r&&o.removeAttribute("open")}),this.querySelectorAll(":scope > details[open]").length?(i.classList.add("show"),e.classList.add("open")):(i.classList.remove("show"),e.classList.remove("open")),a.preventDefault()}}),this.querySelectorAll("details").forEach(a=>{let t=a.querySelector("summary");a.querySelector(":Scope > div").setAttribute("data-title",t.textContent)}),this.querySelector('[slot="search"]')){n.classList.add("has-search");let a=this.shadowRoot.querySelector("#search-wrapper");a.classList.remove("d-none"),a.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>
|
|
39
39
|
<dialog id="search-dialog">
|
|
40
40
|
<div class="container">
|
|
41
41
|
<div class="row">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nav.component.min.js","sources":["nav.component.js"],"sourcesContent":["// @ts-nocheck\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') ? document.body.getAttribute('data-assets-location') : '/assets';\n const coreCSS = document.body.hasAttribute('data-core-css') ? document.body.getAttribute('data-core-css') : `${assetLocation}/css/core.min.css`;\n const loadCSS = `@import \"${assetLocation}/css/components/nav.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 @import \"${coreCSS}\";\n ${loadCSS}\n </style>\n <style class=\"doc-styles\">\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/26fdbf0179.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\">\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.querySelector('.doc-styles').insertAdjacentHTML('beforeend', `@import \"${this.getAttribute('data-css')}\";`);\n const menuButton = this.shadowRoot.querySelector('.btn-menu');\n const menu = this.shadowRoot.querySelector('.menu');\n const iamNav = this;\n const backdrop = this.shadowRoot.querySelector('.backdrop');\n const buttonsHolder = this.shadowRoot.querySelector('.buttons-holder');\n // Check the content \n this.querySelectorAll(':scope > *').forEach(function (element) {\n let 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') && element.hasAttribute('data-title') && 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 iamNav.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 element.classList.toggle('open');\n mdButton.classList.toggle('active');\n // Close desktop menus\n let openMenu = iamNav.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 () { menu.classList.add('closed'); }, 1000); // Delay until its close so the animation is broken\n iamNav.classList.add('open');\n backdrop.classList.add('show');\n element.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n backdrop.classList.remove('show');\n setTimeout(function () { element.classList.add('closed'); }, 1000);\n }\n // Close any open menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (openmenu) {\n if (openmenu != element) {\n openmenu.classList.remove('open');\n }\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (selectedButton) {\n if (selectedButton != button) {\n selectedButton.removeAttribute('aria-expanded');\n let innerBtn = selectedButton.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n }\n });\n }, false);\n }\n });\n // Has secondary link\n if (this.querySelector('a[slot=\"secondary\"]')) {\n menu.classList.add('has-secondary');\n }\n // Create a scroll width variable to help with the sizing of the menu with in the CSS\n document.documentElement.style.setProperty('--scrollbar-width', (window.innerWidth - document.documentElement.offsetWidth) + 'px');\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 () { element.classList.add('closed'); }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n let 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 () { menu.classList.add('closed'); }, 1000);\n }\n }, false);\n // Allow outside JS to close the menu\n this.addEventListener(\"request-close\", (event) => {\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\", (event) => {\n let openMenu = this.querySelector('details[open] summary');\n if (openMenu)\n openMenu.click();\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 let 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 let summary = event.target.closest('summary');\n let details = summary.closest('details');\n let 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 () { menu.classList.add('closed'); }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n let 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, index) => {\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 }\n else {\n backdrop.classList.remove('show');\n iamNav.classList.remove('open');\n }\n event.preventDefault();\n }\n }\n ;\n });\n // Mega menu title\n this.querySelectorAll('details').forEach((detailsElement) => {\n let summary = detailsElement.querySelector('summary');\n let 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 let 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 let searchButton = this.shadowRoot.querySelector('#search-button');\n let searchClose = this.shadowRoot.querySelector('#search-close');\n let 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\", (event) => {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n });\n searchClose.addEventListener(\"click\", (event) => {\n searchDialog.removeAttribute('open');\n this.classList.remove('search-open');\n searchButton.removeAttribute('aria-expanded');\n });\n }\n }\n}\nexport default iamNav;\n"],"names":["iamNav","shadowRoot","assetLocation","coreCSS","template","menuButton","menu","backdrop","buttonsHolder","element","title","iconClass","button","mdButton","e","openMenu","openmenu","selectedButton","event","details","wrapper","detailsArrayElement","index","detailsElement","summary","searchWrapper","searchButton","searchClose","searchDialog"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nav.component.min.js","sources":["nav.component.js"],"sourcesContent":["// @ts-nocheck\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') ? document.body.getAttribute('data-assets-location') : '/assets';\n const coreCSS = document.body.hasAttribute('data-core-css') ? document.body.getAttribute('data-core-css') : `${assetLocation}/css/core.min.css`;\n const loadCSS = `@import \"${assetLocation}/css/components/nav.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 @import \"${coreCSS}\";\n ${loadCSS}\n </style>\n <style class=\"doc-styles\">\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/26fdbf0179.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\">\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.querySelector('.doc-styles').insertAdjacentHTML('beforeend', `@import \"${this.getAttribute('data-css')}\";`);\n const menuButton = this.shadowRoot.querySelector('.btn-menu');\n const menu = this.shadowRoot.querySelector('.menu');\n const iamNav = this;\n const backdrop = this.shadowRoot.querySelector('.backdrop');\n const buttonsHolder = this.shadowRoot.querySelector('.buttons-holder');\n // Check the content \n this.querySelectorAll(':scope > *').forEach(function (element) {\n let 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') && element.hasAttribute('data-title') && 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 iamNav.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 element.classList.toggle('open');\n mdButton.classList.toggle('active');\n // Close desktop menus\n let openMenu = iamNav.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 () { menu.classList.add('closed'); }, 1000); // Delay until its close so the animation is broken\n iamNav.classList.add('open');\n backdrop.classList.add('show');\n element.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n backdrop.classList.remove('show');\n setTimeout(function () { element.classList.add('closed'); }, 1000);\n }\n // Close any open menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (openmenu) {\n if (openmenu != element) {\n openmenu.classList.remove('open');\n }\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (selectedButton) {\n if (selectedButton != button) {\n selectedButton.removeAttribute('aria-expanded');\n let innerBtn = selectedButton.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n }\n });\n }, false);\n }\n });\n this.querySelectorAll('details').forEach(function (element) {\n element.classList.add('details--revert');\n });\n // Has secondary link\n if (this.querySelector('a[slot=\"secondary\"]')) {\n menu.classList.add('has-secondary');\n }\n // Create a scroll width variable to help with the sizing of the menu with in the CSS\n document.documentElement.style.setProperty('--scrollbar-width', (window.innerWidth - document.documentElement.offsetWidth) + 'px');\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 () { element.classList.add('closed'); }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n let 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 () { menu.classList.add('closed'); }, 1000);\n }\n }, false);\n // Allow outside JS to close the menu\n this.addEventListener(\"request-close\", (event) => {\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\", (event) => {\n let openMenu = this.querySelector('details[open] summary');\n if (openMenu)\n openMenu.click();\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 let 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 let summary = event.target.closest('summary');\n let details = summary.closest('details');\n let 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 () { menu.classList.add('closed'); }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n let 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, index) => {\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 }\n else {\n backdrop.classList.remove('show');\n iamNav.classList.remove('open');\n }\n event.preventDefault();\n }\n }\n ;\n });\n // Mega menu title\n this.querySelectorAll('details').forEach((detailsElement) => {\n let summary = detailsElement.querySelector('summary');\n let 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 let 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 let searchButton = this.shadowRoot.querySelector('#search-button');\n let searchClose = this.shadowRoot.querySelector('#search-close');\n let 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\", (event) => {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n });\n searchClose.addEventListener(\"click\", (event) => {\n searchDialog.removeAttribute('open');\n this.classList.remove('search-open');\n searchButton.removeAttribute('aria-expanded');\n });\n }\n }\n}\nexport default iamNav;\n"],"names":["iamNav","shadowRoot","assetLocation","coreCSS","template","menuButton","menu","backdrop","buttonsHolder","element","title","iconClass","button","mdButton","e","openMenu","openmenu","selectedButton","event","details","wrapper","detailsArrayElement","index","detailsElement","summary","searchWrapper","searchButton","searchClose","searchDialog"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/function r(i){if(i.hasAttribute("data-type")&&i.getAttribute("data-type")=="toast"){let t=document.querySelector(".notification__holder");t||(t=document.createElement("div"),t.classList.add("notification__holder"),t.classList.add("container"),document.querySelector("body").appendChild(t)),i.closest(".notification__holder")||t.appendChild(i)}if(i.setAttribute("role","alert"),i.addEventListener("click",function(t){event&&event.target instanceof HTMLElement&&event.target.closest("[data-dismiss-button]")&&(t.preventDefault(),a(i))},!1),i.hasAttribute("data-timeout")){let t=i.getAttribute("data-timeout");var n=new c(function(){a(i)},t);i.addEventListener("mouseenter",o=>{n.pause()}),i.addEventListener("mouseleave",o=>{n.resume()})}}function c(i,n){var t,o,e=n;this.pause=function(){window.clearTimeout(t),e-=new Date-o},this.resume=function(){o=new Date,window.clearTimeout(t),t=window.setTimeout(i,e)},this.resume()}const a=function(i){i.classList.add("d-none")};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Notification"});class d extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const n=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${n}/css/core.min.css`,o=this.querySelectorAll("a,button");Array.from(o).forEach((s,l)=>{s.setAttribute("slot","btns"),s.classList.add("link")}),(o.length||this.hasAttribute("data-dismiss"))&&this.classList.add("notification--dismissable");const e=document.createElement("template");e.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/class v extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const i=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${i}/css/core.min.css`,e=document.createElement("template");e.innerHTML=`
|
|
5
5
|
<style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v5.
|
|
2
|
+
* iamKey v5.5.0
|
|
3
3
|
* Copyright 2022-2024 iamproperty
|
|
4
4
|
*/import k from"js-cookie";const q=e=>e.replace(/ /g,"_"),x=function(e){return e=e.toLowerCase(),e=q(e),e=e.replace(/\W/g,""),e},m=(e,s,a)=>s.split(/[\.\[\]\'\"]/).filter(o=>o).reduce((o,d)=>o?o[d]:a,e),S=e=>Array.isArray(e)||e!==null&&["function","object"].includes(typeof e);var L=function(e,s,a,o){function d(c){return c instanceof a?c:new a(function(n){n(c)})}return new(a||(a=Promise))(function(c,n){function v(r){try{u(o.next(r))}catch(i){n(i)}}function t(r){try{u(o.throw(r))}catch(i){n(i)}}function u(r){r.done?c(r.value):d(r.value).then(v,t)}u((o=o.apply(e,s||[])).next())})};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Search"});class C extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const s=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",a=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${s}/css/core.min.css`,o=document.createElement("template");o.innerHTML=`
|
|
5
5
|
<style>
|