@nationalarchives/frontend 1.3.0 → 1.3.1

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.
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.TNAFrontend=t():e.TNAFrontend=t()}(self,()=>(()=>{"use strict";var e={404(e,t,i){i.d(t,{A:()=>n});class s{events={};oneTimeEvents={};constructor(){if(window.TNAFrontendCookieEvents&&window.TNAFrontendCookieEvents instanceof s)return window.TNAFrontendCookieEvents;window.TNAFrontendCookieEvents=this}clearAll(){this.events={},this.oneTimeEvents={}}on(e,t){this.events[e]=[...this.events[e]||[],t]}once(e,t){this.oneTimeEvents[e]=[...this.oneTimeEvents[e]||[],t]}trigger(e,t={}){Object.hasOwn(this.events,e)&&this.events[e].forEach(e=>e.call(this,t)),Object.hasOwn(this.oneTimeEvents,e)&&(this.oneTimeEvents[e].forEach(e=>e.call(this,t)),this.oneTimeEvents[e]=[])}}class n{defaultDomain="";defaultPath="";secure=!0;preferencesKey="";events=null;defaultAge=null;preferencesCorrectOnInit=!1;tnaCookiePreferences=["usage","settings","marketing","essential"];constructor(e={}){const{defaultDomain:t,defaultPath:i,secure:n,preferencesKey:r,preferencesSetKey:a,defaultAge:o,noInit:l=!1}=e,d=document.documentElement.dataset;this.defaultDomain=t||d.tnaCookiesDomain||window.location.hostname,this.defaultPath=i||d.tnaCookiesPath||"/",this.secure=n||"true"!==d.tnaCookiesInsecure,this.preferencesKey=r||d.tnaCookiesPreferencesKey||"cookie_preferences",this.preferencesSetKey=a||d.tnaCookiesPreferencesSetKey||"cookie_preferences_set",this.defaultAge=o||parseInt(d.tnaCookiesDefaultAge,10)||31536e3,this.events=new s,this.preferencesCorrectOnInit=this.validatePreferences(this.preferences),this.preferencesCorrectOnInit||(this.preferencesSet=!1,l||this.init())}init(){const e=this.preferences,t=Object.fromEntries(Object.keys(e).filter(e=>this.tnaCookiePreferences.includes(e)).map(t=>[t,e[t]]));this.savePreferences({usage:!1,settings:!1,marketing:!1,...t,essential:!0})}validatePreferences(e){return Object.keys(e).length===this.tnaCookiePreferences.length&&this.tnaCookiePreferences.every(t=>Object.keys(e).includes(t)&&"boolean"==typeof e[t])}get all(){const e={};return document.cookie.split("; ").filter(e=>""!==e.trim()).filter(e=>e.includes("=")).forEach(t=>{const i=t.trim().split("="),[s,n=""]=i;e[s]=decodeURIComponent(n)}),e}get preferences(){try{return JSON.parse(this.get(this.preferencesKey)||"{}")}catch(e){return{}}}exists(e){return Object.hasOwn(this.all,e)}hasValue(e,t){return this.get(e)===t}get(e){if(this.exists(e))return decodeURIComponent(this.all[e])}set(e,t,i={}){const{maxAge:s=this.defaultAge,sameSite:n="Lax",domain:r=this.defaultDomain,path:a=this.defaultPath,secure:o=this.secure,session:l=!1}=i;if(!e)return;const d=o?"; secure":"",h=l?"":`; max-age=${s}`,c=`${encodeURIComponent(e)}=${encodeURIComponent(t)}; domain=${r}; samesite=${n}; path=${a}${h}${d}`;document.cookie=c;const u={key:e,value:t,maxAge:s,path:a,sameSite:n,domain:r,secure:o,session:l,cookie:c};this.events.trigger("setCookie",u)}delete(e,t="/",i=this.defaultDomain){const s={maxAge:-1,path:t,domain:i};this.set(e,"",s),this.events.trigger("deleteCookie",{key:e,...s})}deleteAll(e="/",t=this.defaultDomain){Object.keys(this.all).forEach(i=>{this.delete(i,e,t)});const i={path:e,domain:t};this.events.trigger("deleteAllCookies",i)}enablePreference(e){if(!Object.hasOwn(this.preferences,e))throw new Error(`Preference '${e}' does not exist`);this.setPreference(e,!0),this.events.trigger("enablePreference",e),this.events.trigger("changePreference",{[e]:!0})}disablePreference(e){if(!Object.hasOwn(this.preferences,e))throw new Error(`Preference '${e}' does not exist`);this.setPreference(e,!1),this.events.trigger("disablePreference",e),this.events.trigger("changePreference",{[e]:!1})}setPreference(e,t){if(!Object.hasOwn(this.preferences,e))throw new Error(`Preference '${e}' does not exist`);"essential"!==e&&(this.savePreferences({...this.preferences,[e]:t,essential:!0}),this.events.trigger("changePreference",{[e]:t}))}enableAllPreferences(){const e=Object.fromEntries(Object.keys(this.preferences).map(e=>[e.toLowerCase(),!0]));this.savePreferences(e),this.preferencesSet=!0,this.events.trigger("enableAllPreferences"),this.events.trigger("changePreference",e)}disableAllPreferences(){const e={...Object.fromEntries(Object.keys(this.preferences).map(e=>[e.toLowerCase(),!1])),essential:!0};this.savePreferences(e),this.preferencesSet=!0,this.events.trigger("disableAllPreferences"),this.events.trigger("changePreference",e)}savePreferences(e){this.set(this.preferencesKey,JSON.stringify(e))}get preferencesSet(){return this.hasValue(this.preferencesSetKey,"true")}set preferencesSet(e){!0===e&&this.validatePreferences(JSON.parse(this.get(this.preferencesKey)))?this.set(this.preferencesSetKey,"true"):this.delete(this.preferencesSetKey),this.events.trigger("preferencesSet")}preference(e){if(Object.hasOwn(this.preferences,e))return!0===this.preferences[e];throw new Error(`Preference '${e}' does not exist`)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}}},944(e,t,i){i.d(t,{Accordion:()=>n});var s=i(927);class n{constructor(e){this.$module=e,this.$items=e&&e.querySelectorAll(".tna-accordion__item"),this.$module&&this.$items&&(this.allowMultipleItemsOpen="true"!==this.$module.dataset.singleOpenItem,this.$items.forEach(e=>this.initItem(e)),this.initState(),this.$toggleAllButton=this.$module.querySelector(".tna-accordion__toggle-all"),this.$toggleAllButton&&(this.syncToggleAllButton(),this.$toggleAllButton.removeAttribute("hidden"),this.$toggleAllButton.addEventListener("click",()=>{this.isAllOpen()?this.$items.forEach(e=>this.closeItem(e)):this.$items.forEach(e=>this.openItem(e)),this.syncToggleAllButton()})))}initItem(e){const t=e.querySelector(".tna-accordion__heading"),i=e.querySelector(".tna-accordion__body");if(!t||!i)return;e.classList.add("tna-accordion__details"),e.classList.remove("tna-accordion__item"),t.removeAttribute("class"),i.classList.add("tna-accordion__content"),i.classList.remove("tna-accordion__body"),i.setAttribute("hidden","");const s=document.createElement("button");s.classList.add("tna-accordion__summary"),s.setAttribute("type","button"),s.setAttribute("aria-controls",i.id),s.innerText=t.innerText,t.innerText="",t.appendChild(s),s.addEventListener("click",()=>{"true"===s.getAttribute("aria-expanded")?this.closeItem(e):this.openItem(e)})}initState(){this.$items.forEach(e=>{"true"===e.dataset.isopen?this.openItem(e):this.closeItem(e),e.removeAttribute("data-isopen")})}openItem(e){this.allowMultipleItemsOpen||this.closeAllItemsExcept(e);const t=e.querySelector(".tna-accordion__summary"),i=e.querySelector(".tna-accordion__content");t.setAttribute("aria-expanded","true"),t.setAttribute("aria-label",`${t.innerText.trim()}, Hide this section`),i.removeAttribute("hidden"),this.syncToggleAllButton();const n=i.querySelectorAll(".tna-table-wrapper");n&&n.forEach(e=>{(0,s.DJ)(e)})}closeItem(e){const t=e.querySelector(".tna-accordion__summary"),i=e.querySelector(".tna-accordion__content");t.setAttribute("aria-expanded","false"),t.setAttribute("aria-label",`${t.innerText.trim()}, Show this section`),i.setAttribute("hidden",""),this.syncToggleAllButton()}closeAllItemsExcept(e){Array.from(this.$items).filter(t=>t.querySelector(".tna-accordion__summary")!==e&&"true"===t.querySelector(".tna-accordion__summary").getAttribute("aria-expanded")).forEach(e=>this.closeItem(e))}isAllOpen(){return Array.from(this.$items).every(e=>"true"===e.querySelector(".tna-accordion__summary").getAttribute("aria-expanded"))}syncToggleAllButton(){this.$toggleAllButton&&(this.isAllOpen()?this.$toggleAllButton.innerText=this.$toggleAllButton.dataset.closeAllLabel||"Hide all sections":this.$toggleAllButton.innerText=this.$toggleAllButton.dataset.openAllLabel||"Show all sections")}}},592(e,t,i){i.d(t,{Breadcrumbs:()=>n});var s=i(181);class n{constructor(e){this.$module=e,this.$breadcrumbsList=e&&e.querySelector(".tna-breadcrumbs__list"),this.$breadcrumbs=e&&this.$breadcrumbsList&&e.querySelectorAll(".tna-breadcrumbs__item"),this.$module&&this.$breadcrumbsList&&this.$breadcrumbs&&this.$breadcrumbs.length>2&&!this.$module.classList.contains("tna-breadcrumbs--no-collapse")&&this.init()}init(){const e=`tna-breadcrumbs-${(0,s.A)()}`,t=document.createElement("li");t.classList.add("tna-breadcrumbs__item","tna-breadcrumbs__item--expandable"),t.style.display="none";const i=document.createElement("button");i.classList.add("tna-breadcrumbs__link"),i.innerHTML="<span class='tna-!--visually-hidden'>Expand breadcrumbs</span>&hellip;",i.setAttribute("type","button"),i.setAttribute("aria-expanded","false"),i.setAttribute("aria-controls",e),i.addEventListener("click",()=>{this.$module.classList.remove("tna-breadcrumbs--collapsed"),t.remove(),this.$module.setAttribute("tabindex","0"),this.$module.focus(),this.$module.addEventListener("blur",()=>{this.$module.removeAttribute("tabindex")},{once:!0})}),t.appendChild(i),this.$breadcrumbsList.setAttribute("id",e),this.$breadcrumbsList.insertBefore(t,this.$breadcrumbs[this.$breadcrumbs.length-2].nextSibling),this.$module.classList.add("tna-breadcrumbs--collapsed")}}},984(e,t,i){i.d(t,{CodeBlock:()=>s});class s{constructor(e){this.$module=e,this.$code=this.$module.querySelector("pre code"),this.$copyButton=this.$module.querySelector(".tna-code-block__copy"),this.$module&&this.$code&&this.$copyButton&&navigator.clipboard&&(this.$copyButton.removeAttribute("hidden"),this.$module.classList.add("tna-code-block__copyable"),this.$copyButton.addEventListener("click",async()=>{try{await navigator.clipboard.writeText(this.$code.innerText),this.$copyButton.innerText="Code copied"}catch{}}),this.$copyButton.addEventListener("blur",()=>{this.$copyButton.innerText="Copy code"}))}}},24(e,t,i){i.d(t,{CookieBanner:()=>n});var s=i(404);class n{constructor(e){this.$module=e,this.$acceptButton=e&&e.querySelector('[value="accept"]'),this.$rejectButton=e&&e.querySelector('[value="reject"]'),this.$prompt=e&&e.querySelector(".tna-cookie-banner__message--prompt"),this.$acceptedMessage=e&&e.querySelector(".tna-cookie-banner__message--accepted"),this.$rejectedMessage=e&&e.querySelector(".tna-cookie-banner__message--rejected"),this.$closeButtons=e&&e.querySelectorAll('[value="close"]'),this.$module&&this.$acceptButton&&this.$rejectButton&&this.$prompt&&this.$acceptedMessage&&this.$rejectedMessage&&this.$closeButtons&&(this.cookies=new s.A,this.cookies.preferencesSet||(this.$module.removeAttribute("hidden"),this.$acceptButton.addEventListener("click",()=>this.accept()),this.$rejectButton.addEventListener("click",()=>this.reject()),this.$closeButtons.forEach(e=>{e.addEventListener("click",()=>this.close())})))}accept(){this.cookies.enableAllPreferences(),this.showPanel(this.$acceptedMessage)}reject(){this.cookies.disableAllPreferences(),this.showPanel(this.$rejectedMessage)}showPanel(e){this.$prompt.setAttribute("hidden",""),e.removeAttribute("hidden"),e.setAttribute("tabindex","0"),e.focus(),e.addEventListener("blur",()=>{e.removeAttribute("tabindex")})}close(){this.$module.setAttribute("hidden","")}}},728(e,t,i){i.d(t,{DateInputProgressive:()=>s});class s{constructor(e){this.$module=e,this.$yearWrapper=e&&e.querySelector(".tna-date-input__item--year"),this.$yearInput=this.$yearWrapper&&this.$yearWrapper.querySelector("input"),this.$monthWrapper=e&&e.querySelector(".tna-date-input__item--month"),this.$monthInput=this.$monthWrapper&&this.$monthWrapper.querySelector("input"),this.$dayWrapper=e&&e.querySelector(".tna-date-input__item--day"),this.$dayInput=this.$dayWrapper&&this.$dayWrapper.querySelector("input"),this.$module&&(this.update(),window.addEventListener("pageshow",()=>this.update()),this.$yearInput&&(this.$yearInput.addEventListener("keyup",()=>this.update()),this.$yearInput.addEventListener("change",()=>this.update())),this.$monthInput&&(this.$monthInput.addEventListener("keyup",()=>this.update()),this.$monthInput.addEventListener("change",()=>this.update())),this.$dayInput&&(this.$dayInput.addEventListener("keyup",()=>this.update()),this.$dayInput.addEventListener("change",()=>this.update())))}update(){this.isValidYear()?(this.showMonth(),this.isValidMonth()?this.showDay():this.hideDay()):(this.hideMonth(),this.hideDay())}isValidYear(){if(!this.$yearInput)return!0;const e=parseInt(this.$yearInput.value.trim(),10);return!isNaN(this.$yearInput.value)&&!isNaN(e)&&e>0}isValidMonth(){if(!this.$monthInput)return!0;const e=this.$monthInput.value.trim(),t=parseInt(e,10);return!isNaN(this.$monthInput.value)&&!isNaN(t)&&t>0&&t<=12||["january","february","march","april","may","june","july","august","september","october","november","december","jan","feb","mar","apr","jun","jul","aug","sep","oct","nov","dec"].includes(e.toLowerCase())}showMonth(){this.$monthWrapper&&this.$monthWrapper.removeAttribute("hidden")}hideMonth(){this.$monthWrapper&&this.$monthWrapper.setAttribute("hidden","")}showDay(){this.$dayWrapper&&this.$dayWrapper.removeAttribute("hidden")}hideDay(){this.$dayWrapper&&this.$dayWrapper.setAttribute("hidden","")}}},552(e,t,i){i.d(t,{ErrorSummary:()=>s});class s{constructor(e){this.$module=e}init(){this.$module&&("true"===this.$module.dataset.disableAutofocus||this.setFocus(this.$module),this.$module.addEventListener("click",e=>this.handleClick(e)))}setFocus(e,t={}){const i=e.getAttribute("tabindex");function s(){t.onBlur?.call(e),i||e.removeAttribute("tabindex")}i||e.setAttribute("tabindex","-1"),e.addEventListener("focus",function(){e.addEventListener("blur",s,{once:!0})},{once:!0}),t.onBeforeFocus?.call(e),e.focus()}handleClick(e){const t=e.target;t&&this.focusTarget(t)&&e.preventDefault()}getFragmentFromUrl(e){return e.includes("#")?e.split("#").pop():null}focusTarget(e){if(!(e instanceof HTMLAnchorElement))return!1;const t=this.getFragmentFromUrl(e.href);if(!t)return!1;const i=document.getElementById(t);if(!i)return!1;const s=this.getAssociatedLegendOrLabel(i);return!!s&&(s.scrollIntoView(),i.focus({preventScroll:!0}),!0)}getAssociatedLegendOrLabel(e){const t=e.closest("fieldset");if(t){const i=t.getElementsByTagName("legend");if(i.length){const[t]=i;if(e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type))return t;const s=t.getBoundingClientRect().top,n=e.getBoundingClientRect();if(n.height&&window.innerHeight&&n.top+n.height-s<window.innerHeight/2)return t}}return document.querySelector(`label[for='${e.getAttribute("id")}']`)??e.closest("label")}}},76(e,t,i){i.d(t,{FileInputDroppable:()=>s});class s{constructor(e){this.$module=e,this.$body=e&&e.querySelector(".tna-form-item__body"),this.$input=this.$body&&this.$body.querySelector(".tna-file-input"),this.$module&&this.$body&&this.$input&&(this.acceptMutltipleFiles=this.$input.hasAttribute("multiple"),this.init())}init(){this.$droppableArea=document.createElement("div"),this.$droppableArea.classList.add("tna-file-input__droppable","tna-file-input__droppable--empty"),this.$body.insertBefore(this.$droppableArea,this.$input),this.$droppableArea.appendChild(this.$input),this.$pseudoSelectFileText=document.createElement("span"),this.$pseudoSelectFileText.setAttribute("aria-live","polite"),this.$pseudoSelectFileText.classList.add("tna-file-input__droppable-status");const e=this.acceptMutltipleFiles?"files":"file";this.$pseudoSelectFileText.textContent=`No ${e} selected`,this.$droppableArea.appendChild(this.$pseudoSelectFileText);const t=document.createElement("div");t.classList.add("tna-button-group","tna-button-group--small","tna-!--margin-top-s","tna-file-input__droppable-buttons"),this.$droppableArea.appendChild(t);const i=document.createElement("span");i.classList.add("tna-button"),i.textContent=`Choose ${e}`,t.appendChild(i);const s=document.createElement("span");s.textContent=`or drop ${e}`,t.appendChild(s),this.$droppableAreaAriaLabel=document.createElement("span"),this.$droppableAreaAriaLabel.classList.add("tna-visually-hidden"),this.$droppableAreaAriaLabel.setAttribute("aria-live","assertive"),this.$droppableArea.appendChild(this.$droppableAreaAriaLabel),this.$input.addEventListener("dragenter",e=>this.showDropTarget(e)),this.$input.addEventListener("dragleave",()=>this.hideDropTarget()),this.$input.addEventListener("dragend",()=>this.hideDropTarget()),this.$input.addEventListener("change",()=>this.onChange()),this.$input.addEventListener("drop",()=>this.onChange())}isContainingFiles(e){const t=!e.types.length,i=e.types.some(e=>"Files"===e);return t||i}showDropTarget(e,t=!0){if(e.dataTransfer&&this.isContainingFiles(e.dataTransfer)){let i="tna-file-input__droppable--over";e.dataTransfer.items.length&&(i="tna-file-input__droppable--over-multiple"),this.$droppableArea.classList.add(i),t&&(this.$droppableAreaAriaLabel.textContent="Entered drop zone")}}hideDropTarget(e=!0){this.$droppableArea.classList.remove("tna-file-input__droppable--over","tna-file-input__droppable--over-multiple"),e&&(this.$droppableAreaAriaLabel.textContent="Left drop zone")}onChange(){const{files:e}=this.$input;if(this.acceptMutltipleFiles)if(e.length){let t="file";e.length>1&&(t+="s");const i=`${e.length} ${t} selected`;this.$pseudoSelectFileText.textContent=i}else this.$pseudoSelectFileText.textContent="No files selected";else this.$pseudoSelectFileText.textContent=e[0]?.name||"No file selected";e.length?this.$droppableArea.classList.remove("tna-file-input__droppable--empty"):this.$droppableArea.classList.add("tna-file-input__droppable--empty"),this.hideDropTarget(!1)}}},876(e,t,i){i.d(t,{Footer:()=>n});var s=i(404);class n{constructor(e,t="theme"){this.$module=e,this.$themeSelector=e&&e.querySelector(".tna-footer__theme-selector"),this.$themeSelectorNotice=e&&e.querySelector(".tna-footer__theme-selector-notice"),this.$themeSelectorEnableSettingsCookiesButton=this.$themeSelectorNotice&&this.$themeSelectorNotice.querySelector(".tna-footer__theme-selector-enable-settings-cookies"),this.$tnaTemplate=document.querySelector(".tna-template"),this.$module&&this.$themeSelector&&this.$themeSelectorNotice&&this.$themeSelectorEnableSettingsCookiesButton&&this.$tnaTemplate&&(this.themeCookieName=t,this.init())}init(){this.currentTheme=this.$themeSelector.dataset.themeOnLoad,this.cookies=new s.A,this.$themeSelectorButtons=this.$themeSelector.querySelectorAll("button.tna-footer__theme-selector-button[value]"),Array.from(this.$themeSelectorButtons).forEach(e=>{e.addEventListener("click",e=>{const t=e.target;this.setTheme(t.value),this.selectThemeSelectorButton(t)})}),this.$themeSelectorEnableSettingsCookiesButton.addEventListener("click",()=>{this.cookies.enablePreference("settings")}),this.showThemeSelector(),this.cookies.on("changePreference",e=>{Object.hasOwn(e,"settings")&&(!0===e.settings?(this.cookies.set(this.themeCookieName,this.currentTheme),this.$themeSelectorNotice.setAttribute("hidden","")):(this.cookies.delete(this.themeCookieName),this.$themeSelectorNotice.removeAttribute("hidden")))})}showThemeSelector(){if(this.$themeSelector.removeAttribute("hidden"),this.cookies.exists(this.themeCookieName)){const e=Array.from(this.$themeSelectorButtons).find(e=>e.value===this.cookies.get(this.themeCookieName));e&&this.selectThemeSelectorButton(e)}this.cookies.preference("settings")||this.$themeSelectorNotice.removeAttribute("hidden")}setTheme(e){if("light"===e)this.$tnaTemplate.classList.remove("tna-template--system-theme","tna-template--dark-theme");else if("dark"===e)this.$tnaTemplate.classList.remove("tna-template--system-theme"),this.$tnaTemplate.classList.add("tna-template--dark-theme");else{if("system"!==e)return;this.$tnaTemplate.classList.remove("tna-template--dark-theme"),this.$tnaTemplate.classList.add("tna-template--system-theme")}this.currentTheme=e,this.cookies.preference("settings")?this.cookies.set(this.themeCookieName,this.currentTheme):this.$themeSelectorNotice.removeAttribute("hidden")}selectThemeSelectorButton(e){Array.from(this.$themeSelectorButtons).forEach(t=>{t.value===e.value?(t.classList.remove("tna-button--plain"),t.setAttribute("aria-current",!0)):(t.classList.add("tna-button--plain"),t.removeAttribute("aria-current"))})}}},344(e,t,i){i.d(t,{Gallery:()=>s});class s{constructor(e){this.$module=e,this.$itemsContainer=e&&e.querySelector(".tna-gallery__items"),this.$items=this.$itemsContainer&&this.$itemsContainer.querySelectorAll(".tna-gallery__item"),this.$navigation=e&&e.querySelector(".tna-gallery__navigation"),this.$navigationItems=this.$navigation&&e.querySelectorAll(".tna-gallery__navigation-item"),this.$navigationButtons=e&&e.querySelector(".tna-gallery__navigation-buttons"),this.$module&&this.$itemsContainer&&this.$items&&!(this.$items.length<2)&&this.$navigation&&this.$navigationItems&&this.$navigationButtons&&(this.$module.classList.add("tna-gallery--interactive"),this.$navigationButtonPrev=this.$navigationButtons.querySelector(".tna-gallery__navigation-prev"),this.$navigationButtonNext=this.$navigationButtons.querySelector(".tna-gallery__navigation-next"),this.setup(),this.currentId=this.$items[0].id,this.showItem(this.currentId))}setup(){this.$items.forEach(e=>{e.setAttribute("hidden",""),e.setAttribute("aria-hidden","true"),e.querySelector(".tna-gallery__item-header")?.setAttribute("aria-hidden","true")}),this.$navigation.removeAttribute("hidden"),this.$navigationItems.forEach(e=>{e.addEventListener("click",()=>{this.showItem(e.getAttribute("aria-controls")),this.$itemsContainer.setAttribute("tabindex","0"),this.$itemsContainer.focus()})}),this.$module.addEventListener("keydown",e=>{let t=!1;switch(e.key){case"ArrowLeft":case"ArrowUp":this.showPreviousItem(),t=!0;break;case"ArrowRight":case"ArrowDown":this.showNextItem(),t=!0;break;case"Home":this.showFirstItem(),t=!0;break;case"End":this.showLastItem(),t=!0}t&&(e.stopPropagation(),e.preventDefault())}),this.$navigationButtons?.removeAttribute("hidden"),this.$navigationButtonPrev?.addEventListener("click",()=>{this.showPreviousItem()}),this.$navigationButtonNext?.addEventListener("click",()=>{this.showNextItem()}),this.$liveRegion=document.createElement("div"),this.$liveRegion.setAttribute("aria-live","polite"),this.$liveRegion.setAttribute("aria-atomic","true"),this.$liveRegion.setAttribute("class","tna-gallery__item-header"),this.$itemsContainer.prepend(this.$liveRegion),this.$itemsContainer.classList.add("tna-gallery__items--hide-item-titles"),this.$itemsContainer.addEventListener("blur",()=>this.$itemsContainer.removeAttribute("tabindex"))}showItem(e){this.$items.forEach(t=>{e&&t.id===e?(t.removeAttribute("hidden"),t.removeAttribute("aria-hidden")):(t.setAttribute("hidden",""),t.setAttribute("aria-hidden","true"))}),this.$navigationItems.forEach(t=>{e&&t.getAttribute("aria-controls")===e?t.setAttribute("aria-current","true"):t.setAttribute("aria-current","false")}),this.currentId=e,this.$liveRegion.textContent=`Image ${this.getCurrentItemIndex()+1} of ${this.$items.length}`}getCurrentItemIndex(){return Array.from(this.$items).findIndex(e=>e.id===this.currentId)}showPreviousItem(){let e=this.getCurrentItemIndex()-1;e<0&&(e=this.$items.length-1),this.showItem(this.$items[e].id)}showNextItem(){let e=this.getCurrentItemIndex()+1;e>=this.$items.length&&(e=0),this.showItem(this.$items[e].id)}showFirstItem(){this.showItem(this.$items[0].id)}showLastItem(){this.showItem(this.$items[this.$items.length-1].id)}}},576(e,t,i){i.d(t,{GlobalHeader:()=>s});class s{constructor(e){this.$module=e,this.$toggleButton=e&&e.querySelector(".tna-global-header__navigation-button"),this.$navigation=e&&e.querySelector(".tna-global-header__navigation-wrapper"),this.$topNavigation=e&&e.querySelector(".tna-global-header__top-navigation-wrapper"),this.$links=e&&(this.$navigation&&this.$navigation.querySelectorAll("[tabindex='0']")||this.$topNavigation&&this.$topNavigation.querySelectorAll("[tabindex='0']")),this.menuOpened=!1,this.mql=window.matchMedia("(max-width: 48em)"),this.$module&&this.$toggleButton&&(this.$navigation||this.$topNavigation)&&(this.$toggleButton.removeAttribute("hidden"),this.syncState(),this.$toggleButton.addEventListener("click",()=>this.handleToggleNavigation()),"addEventListener"in this.mql?this.mql.addEventListener("change",()=>this.syncState()):this.mql.addListener(()=>this.syncState()),this.$module.addEventListener("keyup",e=>{"Escape"===e.code&&this.mql.matches&&this.menuOpened&&(this.menuOpened=!1,this.syncState(),this.$toggleButton.focus())}))}handleToggleNavigation(){this.menuOpened=!this.menuOpened,this.syncState()}syncState(){this.mql.matches?this.menuOpened?this.show():this.hide():this.show()}hide(){this.$navigation&&(this.$navigation.hidden=!0,this.$navigation.setAttribute("aria-hidden","true")),this.$topNavigation&&(this.$topNavigation.hidden=!0,this.$topNavigation.setAttribute("aria-hidden","true")),this.$toggleButton.setAttribute("aria-expanded","false"),this.$toggleButton.setAttribute("title","Open menu"),this.$toggleButton.classList.remove("tna-global-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","-1")}show(){this.$navigation&&(this.$navigation.hidden=!1,this.$navigation.setAttribute("aria-hidden","false")),this.$topNavigation&&(this.$topNavigation.hidden=!1,this.$topNavigation.setAttribute("aria-hidden","false")),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu"),this.$toggleButton.classList.add("tna-global-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","0")}}},432(e,t,i){i.d(t,{Header:()=>s});class s{constructor(e){this.$module=e,this.$toggleButton=e&&e.querySelector(".tna-header__navigation-button"),this.$navigation=e&&e.querySelector(".tna-header__navigation"),this.$links=e&&this.$navigation&&this.$navigation.querySelectorAll("[tabindex='0']"),this.menuOpened=!1,this.mql=window.matchMedia("(max-width: 48em)"),this.$module&&this.$toggleButton&&this.$navigation&&(this.$toggleButton.removeAttribute("hidden"),this.syncState(),this.$toggleButton.addEventListener("click",()=>this.handleToggleNavigation()),"addEventListener"in this.mql?this.mql.addEventListener("change",()=>this.syncState()):this.mql.addListener(()=>this.syncState()),this.$module.addEventListener("keyup",e=>{"Escape"===e.code&&this.menuOpened&&this.mql.matches&&(this.menuOpened=!1,this.syncState(),this.$toggleButton.focus())}))}handleToggleNavigation(){this.menuOpened=!this.menuOpened,this.syncState()}syncState(){this.mql.matches?this.menuOpened?this.show():this.hide():this.show()}show(){this.$navigation.classList.add("tna-header__navigation--open"),this.$navigation.removeAttribute("hidden"),this.$navigation.setAttribute("aria-hidden","false"),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu"),this.$toggleButton.classList.add("tna-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","0")}hide(){this.$navigation.classList.remove("tna-header__navigation--open"),this.$navigation.hidden=!0,this.$navigation.setAttribute("aria-hidden","true"),this.$toggleButton.setAttribute("aria-expanded","false"),this.$toggleButton.setAttribute("title","Open menu"),this.$toggleButton.classList.remove("tna-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","-1")}}},384(e,t,i){i.d(t,{Picture:()=>n});var s=i(181);class n{constructor(e){this.$module=e,this.$imageWrapper=e&&e.querySelector(".tna-picture__image-wrapper"),this.$transcriptToggle=this.$imageWrapper&&this.$imageWrapper.querySelector(".tna-picture__toggle-transcript"),this.$transcript=e&&e.querySelector(".tna-picture__transcript"),this.transcriptOpened=!1,this.$module&&this.$imageWrapper&&this.$transcriptToggle&&this.$transcript&&(this.openLabel=this.$module.dataset.informationLabelOpen||"Open transcript",this.closeLabel=this.$module.dataset.informationLabelClose||"Close transcript",this.init())}init(){const e=`tna-picture-${(0,s.A)()}`;this.$transcriptToggle.removeAttribute("hidden"),this.$transcriptToggle.setAttribute("aria-controls",e),this.$transcriptToggle.innerText=this.openLabel,this.$transcriptToggle.addEventListener("click",()=>this.toggleTranscript()),this.$transcript.setAttribute("id",e),this.$transcript.setAttribute("hidden",""),this.$transcript.addEventListener("keydown",e=>{"Escape"===e.key&&(this.toggleTranscript(),this.$transcriptToggle.focus())})}toggleTranscript(){this.transcriptOpened=!this.transcriptOpened,this.transcriptOpened?(this.$transcriptToggle.setAttribute("aria-expanded",!0),this.$transcriptToggle.innerText=this.closeLabel,this.$transcript.removeAttribute("hidden")):(this.$transcriptToggle.setAttribute("aria-expanded",!1),this.$transcriptToggle.innerText=this.openLabel,this.$transcript.setAttribute("hidden",""))}}},612(e,t,i){i.d(t,{Sidebar:()=>s});class s{constructor(e,t={}){if(this.$module=e,this.items=e&&Array.from(e.querySelectorAll(".tna-sidebar__item")).map(e=>{const t=e.querySelector(".tna-sidebar__link[href^='#']").getAttribute("href").substring(1);return{$item:e,id:t,target:document.getElementById(t)}}).filter(e=>e.target),!this.$module||!this.items)return;const{scrollTopThreshold:i=0,disableHighlightSize:s="small"}=t;this.scrollTopThreshold=i,this.disableHighlightSize=s,this.init()}init(){if(this.breakpoints={tiny:getComputedStyle(document.documentElement).getPropertyValue("--media-breakpoint-tiny")||"480px",small:getComputedStyle(document.documentElement).getPropertyValue("--media-breakpoint-small")||"768px",medium:getComputedStyle(document.documentElement).getPropertyValue("--media-breakpoint-medium")||"1024px"},this.disableHighlightSize){if(!Object.keys(this.breakpoints).includes(this.disableHighlightSize))throw new Error(`Invalid value for disableHighlightSize: ${this.disableHighlightSize}. Expected one of: ${Object.keys(this.breakpoints).join(", ")}`);this.hideOnDevice=window.matchMedia(`(max-width: ${this.breakpoints[this.disableHighlightSize]})`)}else this.hideOnDevice=null;this.currentItem=null,window.addEventListener("scroll",()=>this.highlightCurrentSection()),window.addEventListener("resize",()=>this.highlightCurrentSection()),this.highlightCurrentSection()}highlightCurrentSection(){if(this.hideOnDevice&&this.hideOnDevice.matches)return this.items.forEach(e=>{e.$item.classList.remove("tna-sidebar__item--current")}),void(this.currentItem=null);const e=this.items.findLast(e=>Math.floor(e.target.getBoundingClientRect().top)<=this.scrollTopThreshold);e!==this.currentItem&&this.items.forEach(t=>{e&&t===e?(this.currentItem=t,this.currentItem.$item.classList.add("tna-sidebar__item--current")):t.$item.classList.remove("tna-sidebar__item--current")}),this.currentItem=e||null}}},292(e,t,i){i.d(t,{SkipLink:()=>s});class s{linkedElementListener=!1;constructor(e){this.$module=e,this.linkedElementId=e.getAttribute("href")?.split("#").pop(),this.$linkedElement=e&&this.linkedElementId&&document.getElementById(this.linkedElementId),this.$module&&this.$linkedElement&&this.$module.addEventListener("click",()=>this.focusLinkedElement())}focusLinkedElement(){this.$linkedElement.getAttribute("tabindex")||(this.$linkedElement.setAttribute("tabindex","-1"),this.$linkedElement.classList.add("tna-!--no-focus-style"),this.linkedElementListener||(this.$linkedElement.addEventListener("blur",()=>this.removeFocusProperties()),this.linkedElementListener=!0)),this.$linkedElement.focus()}removeFocusProperties(){this.$linkedElement.removeAttribute("tabindex"),this.$linkedElement.classList.remove("tna-!--no-focus-style")}}},42(e,t,i){i.d(t,{Tabs:()=>s});class s{constructor(e){this.$module=e,this.$tabList=e&&e.querySelector(".tna-tabs__list"),this.$tabListItemLinks=e&&this.$tabList&&this.$tabList.querySelectorAll(".tna-tabs__button"),this.$tabItems=e&&e.querySelectorAll(".tna-tabs__item"),this.$module&&this.$tabList&&this.$tabListItemLinks&&this.$tabItems&&this.$tabListItemLinks.length===this.$tabItems.length&&(this.currentTabIndex=this.$module.dataset.activeTabOnLoad?parseInt(this.$module.dataset.activeTabOnLoad,10):0,this.allowClose="true"===this.$module.dataset.allowClose,this.init())}init(){this.$module.classList.add("tna-tabs--interactive"),this.$tabList.removeAttribute("hidden"),this.$tabListItemLinks.forEach(e=>{const t=e.getAttribute("aria-controls");e.setAttribute("aria-selected",!1);const i=document.getElementById(t);i.setAttribute("aria-labelledby",e.id),i.setAttribute("role","tabpanel"),e.addEventListener("click",e=>this.handleItemLinkClick(e),!0)}),this.switchTabByIndex(this.currentTabIndex),this.$module.addEventListener("keydown",e=>this.handleItemLinkKeyDown(e))}handleItemLinkClick(e){e.preventDefault();const t=e.currentTarget.getAttribute("aria-controls");this.switchTabByID(t)}handleItemLinkKeyDown(e){let t=!1;switch(e.key){case"ArrowLeft":case"ArrowUp":this.previousTab(),t=!0;break;case"ArrowRight":case"ArrowDown":this.nextTab(),t=!0;break;case"Home":this.switchTabByIndex(0,!0),t=!0;break;case"End":this.switchTabByIndex(this.$tabListItemLinks.length-1,!0),t=!0}t&&(e.stopPropagation(),e.preventDefault())}nextTab(){this.currentTabIndex<this.$tabListItemLinks.length-1?this.switchTabByIndex(this.currentTabIndex+1,!0):this.switchTabByIndex(0,!0)}previousTab(){this.currentTabIndex>=1?this.switchTabByIndex(this.currentTabIndex-1,!0):this.switchTabByIndex(this.$tabListItemLinks.length-1,!0)}switchTabByIndex(e,t=!1){this.currentTabIndex=e,"true"===this.$tabListItemLinks[this.currentTabIndex]?.getAttribute("aria-selected").toString()&&this.allowClose&&(this.currentTabIndex=-1),this.$tabListItemLinks.forEach((e,i)=>{i===this.currentTabIndex?(e.setAttribute("aria-selected",!0),e.setAttribute("tabindex","0"),t&&e.focus()):(e.setAttribute("aria-selected",!1),e.setAttribute("tabindex","-1"))}),this.$tabItems.forEach((e,t)=>{t===this.currentTabIndex?(e.removeAttribute("hidden"),e.setAttribute("tabindex","0")):(e.setAttribute("hidden",""),e.setAttribute("tabindex","-1"))})}switchTabByID(e){const t=Array.from(this.$tabItems).findIndex(t=>t.getAttribute("id")===e);this.switchTabByIndex(t)}}},866(e,t,i){i.d(t,{TextInputPassword:()=>s});class s{constructor(e){this.$module=e,this.$input=e&&e.querySelector(".tna-text-input"),this.$module&&this.$input&&"password"===this.$input.getAttribute("type")&&(this.$textInputWrapper=document.createElement("div"),this.$textInputWrapper.classList.add("tna-text-input-wrapper"),this.$textInputPasswordToggle=document.createElement("button"),this.$textInputPasswordToggle.setAttribute("type","button"),this.$textInputPasswordToggle.classList.add("tna-button","tna-button--small","tna-button--icon-only"),this.$textInputPasswordToggle.setAttribute("aria-controls",this.$input.id),this.updateTogglePasswordButtonText(),this.$textInputWrapper.appendChild(this.$input),this.$textInputWrapper.appendChild(this.$textInputPasswordToggle),this.$module.appendChild(this.$textInputWrapper),this.$textInputPasswordToggle.addEventListener("click",()=>{this.togglePasswordType(),this.$input.focus()}))}togglePasswordType(){"password"===this.$input.getAttribute("type")?this.$input.setAttribute("type","text"):this.$input.setAttribute("type","password"),this.updateTogglePasswordButtonText()}updateTogglePasswordButtonText(){"password"===this.$input.getAttribute("type")?(this.$textInputPasswordToggle.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" height="24" aria-hidden="true" focusable="false">\x3c!--!Font Awesome Free v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--\x3e<path d="M320 96C239.2 96 174.5 132.8 127.4 176.6C80.6 220.1 49.3 272 34.4 307.7C31.1 315.6 31.1 324.4 34.4 332.3C49.3 368 80.6 420 127.4 463.4C174.5 507.1 239.2 544 320 544C400.8 544 465.5 507.2 512.6 463.4C559.4 419.9 590.7 368 605.6 332.3C608.9 324.4 608.9 315.6 605.6 307.7C590.7 272 559.4 220 512.6 176.6C465.5 132.9 400.8 96 320 96zM176 320C176 240.5 240.5 176 320 176C399.5 176 464 240.5 464 320C464 399.5 399.5 464 320 464C240.5 464 176 399.5 176 320zM320 256C320 291.3 291.3 320 256 320C244.5 320 233.7 317 224.3 311.6C223.3 322.5 224.2 333.7 227.2 344.8C240.9 396 293.6 426.4 344.8 412.7C396 399 426.4 346.3 412.7 295.1C400.5 249.4 357.2 220.3 311.6 224.3C316.9 233.6 320 244.4 320 256z" /></svg>Show password',this.$textInputPasswordToggle.setAttribute("title","Show password"),this.$textInputPasswordToggle.setAttribute("aria-label","Show password")):(this.$textInputPasswordToggle.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" height="24" aria-hidden="true" focusable="false">\x3c!--!Font Awesome Free v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--\x3e<path d="M73 39.1C63.6 29.7 48.4 29.7 39.1 39.1C29.8 48.5 29.7 63.7 39 73.1L567 601.1C576.4 610.5 591.6 610.5 600.9 601.1C610.2 591.7 610.3 576.5 600.9 567.2L504.5 470.8C507.2 468.4 509.9 466 512.5 463.6C559.3 420.1 590.6 368.2 605.5 332.5C608.8 324.6 608.8 315.8 605.5 307.9C590.6 272.2 559.3 220.2 512.5 176.8C465.4 133.1 400.7 96.2 319.9 96.2C263.1 96.2 214.3 114.4 173.9 140.4L73 39.1zM236.5 202.7C260 185.9 288.9 176 320 176C399.5 176 464 240.5 464 320C464 351.1 454.1 379.9 437.3 403.5L402.6 368.8C415.3 347.4 419.6 321.1 412.7 295.1C399 243.9 346.3 213.5 295.1 227.2C286.5 229.5 278.4 232.9 271.1 237.2L236.4 202.5zM357.3 459.1C345.4 462.3 332.9 464 320 464C240.5 464 176 399.5 176 320C176 307.1 177.7 294.6 180.9 282.7L101.4 203.2C68.8 240 46.4 279 34.5 307.7C31.2 315.6 31.2 324.4 34.5 332.3C49.4 368 80.7 420 127.5 463.4C174.6 507.1 239.3 544 320.1 544C357.4 544 391.3 536.1 421.6 523.4L357.4 459.2z" /></svg>Hide password',this.$textInputPasswordToggle.setAttribute("title","Hide password"),this.$textInputPasswordToggle.setAttribute("aria-label","Hide password"))}}},494(e,t,i){i.d(t,{TextAreaItemisedRows:()=>s});class s{constructor(e,t={}){if(this.$module=e,this.$formFieldInput=this.$module&&this.$module.querySelector(".tna-textarea"),this.$formFieldInputHint=this.$module&&this.$module.querySelector(".tna-form-item__hint"),this.$formFieldBody=this.$module&&this.$module.querySelector(".tna-form-item__body"),!this.$module||!this.$formFieldInput||!this.$formFieldBody||null!==this.$formFieldInput.getAttribute("hidden"))return;const{enhancedHint:i}=t;this.enhancedHint=i||"Enter an item and press enter",this.init()}init(){this.values=this.$formFieldInput.value.split("\n").map(e=>e.trim()).filter(e=>e),this.id=this.$formFieldInput.id,this.$formFieldNewInput=document.createElement("input"),this.$formFieldNewInput.classList.add("tna-text-input"),["id","aria-describedby"].forEach(e=>{this.$formFieldNewInput.setAttribute(e,this.$formFieldInput.getAttribute(e)),this.$formFieldInput.removeAttribute(e)}),this.$formFieldBody.appendChild(this.$formFieldNewInput),this.$formFieldInput.setAttribute("hidden",""),this.$formFieldInput.addEventListener("keyup",()=>this.updateList()),this.$formFieldNewInput.addEventListener("keypress",e=>{"Enter"===e.key&&this.appendValue(e.target.value)}),this.$formFieldNewInputAddButton=document.createElement("button"),this.$formFieldNewInputAddButton.setAttribute("type","button"),this.$formFieldNewInputAddButton.classList.add("tna-button","tna-button--small"),this.$formFieldNewInputAddButtonInner=document.createElement("span"),this.$formFieldNewInputAddButtonInner.innerText="Add",this.$formFieldNewInputAddButtonInnerExtra=document.createElement("span"),this.$formFieldNewInputAddButtonInnerExtra.classList.add("tna-visually-hidden"),this.$formFieldNewInputAddButtonInnerExtra.innerText=" to list",this.$formFieldNewInputAddButtonInner.appendChild(this.$formFieldNewInputAddButtonInnerExtra),this.$formFieldNewInputAddButton.appendChild(this.$formFieldNewInputAddButtonInner),this.$formFieldBody.appendChild(this.$formFieldNewInputAddButton),this.$formFieldNewInputAddButton.addEventListener("click",()=>{this.appendValue(this.$formFieldNewInput.value)}),this.$formFieldLiveAria=document.createElement("div"),this.$formFieldLiveAria.setAttribute("aria-live","assertive"),this.$formFieldLiveAria.classList.add("tna-visually-hidden"),this.$module.appendChild(this.$formFieldLiveAria),this.$formFieldCounter=document.createElement("p"),this.$formFieldCounter.id=`${this.id}-list-helper`,this.$formFieldCounter.classList.add("tna-!--margin-top-xs"),this.$module.appendChild(this.$formFieldCounter),this.$formFieldNewInput.setAttribute("aria-describedby",`${this.$formFieldNewInput.getAttribute("aria-describedby")} ${this.$formFieldCounter.id}`),this.$valuesList=document.createElement("ul"),this.$valuesList.classList.add("tna-compound-filters","tna-!--margin-top-xs"),this.$valuesList.addEventListener("blur",()=>{this.$valuesList.removeAttribute("tabindex"),this.updateAriaText("")}),this.$module.appendChild(this.$valuesList),this.$formFieldInputHint||(this.$formFieldInputHint=document.createElement("p"),this.$formFieldInputHint.classList.add("tna-form-item__hint"),this.$formFieldBody.parentNode.insertBefore(this.$formFieldInputHint,this.$formFieldBody)),this.$formFieldInputHint.innerText=this.enhancedHint,this.updateList()}updateAriaText(e){this.$formFieldLiveAria.innerText=e}normaliseValue(e){return e.replace(/\s{2,}/u," ").trim()}isValueInList(e){return this.values.map(e=>this.normaliseValue(e).toLowerCase()).includes(e.toLowerCase().trim())}appendValue(e){const t=this.normaliseValue(e);t?this.isValueInList(t)?this.updateAriaText(`'${t}' already added`):(this.values.push(t),this.$formFieldInput.value=this.values.join("\n"),this.updateList(),this.updateAriaText(`'${t}' added`)):this.updateAriaText("Enter an item to add"),this.$formFieldNewInput.value="",this.$formFieldNewInput.focus()}removeValue(e){const t=this.normaliseValue(e);t&&this.isValueInList(t)&&(this.values=this.values.filter(e=>e!==t),this.$formFieldInput.value=this.values.join("\n"),this.updateList(),this.updateAriaText(`'${t}' removed`)),this.values.length?(this.$valuesList.setAttribute("tabindex","0"),this.$valuesList.focus()):this.$formFieldNewInput.focus()}updateList(){this.$valuesList.innerHTML="",this.values.map(e=>{const t=document.createElement("li");t.classList.add("tna-compound-filters__item");const i=document.createElement("span");i.innerText=e,t.appendChild(i);const s=document.createElement("button");return s.innerText=`Remove '${e}'`,s.setAttribute("type","button"),s.classList.add("tna-compound-filters__link"),s.addEventListener("click",()=>{this.removeValue(e)}),t.appendChild(s),t}).forEach(e=>this.$valuesList.appendChild(e));let e="item";1!==this.values.length&&(e+="s");const t=`${this.values.length} ${e} added`;this.$formFieldCounter.innerText=t}}},927(e,t,i){var s=i(181);i.d(t,["DJ",0,e=>{const t=e.querySelector("caption");"true"!==e.dataset.tableScrollInitialised&&(t&&!t.id&&(t.id=`table-caption-${(0,s.A)()}`),e.dataset.tableScrollInitialised="true"),e.scrollWidth>e.clientWidth?(e.setAttribute("tabindex","0"),e.setAttribute("role","region"),e.setAttribute("aria-labelledby",t?.id||""),e.classList.add("tna-table-wrapper--scroll")):(e.removeAttribute("tabindex"),e.removeAttribute("role"),e.removeAttribute("aria-labelledby"),e.classList.remove("tna-table-wrapper--scroll"))},"FH",0,e=>{const t=e.getAttribute("datetime");try{const i=(e=>{const t=e;if(!t)throw new Error("No datetime provided");const i=/^\d{4}(?:-\d{2}){2}(?:T| )\d{2}(?::\d{2}){1,2}(?:\.\d+)?(?:Z|(?:[+-]\d{2}:\d{2}))?$/u.test(t),s=/^\d{4}(?:-\d{2}){2}$/u.test(t);if(!i&&!s)throw new Error("Invalid datetime provided");const n=new Date(t);if(!(n instanceof Date)||isNaN(n))throw new Error("Invalid datetime provided");const r=n.toLocaleDateString("en-GB",{weekday:"long"}),a=n.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"});if(i&&(n.getHours()||n.getMinutes())){let e=n.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit"});return n.getSeconds()&&(e=n.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",second:"2-digit"})),`${r} ${a}, ${e}`}return`${r} ${a}`})(t);i.includes(e.textContent)||(e.setAttribute("title",e.textContent),e.textContent=i)}catch(e){}}])},181(e,t,i){i.d(t,["A",0,()=>([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/gu,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))])}};const t={};function i(s){const n=t[s];if(void 0!==n)return n.exports;const r=t[s]={exports:{}};return e[s](r,r.exports,i),r.exports}i.d=(e,t)=>{if(Array.isArray(t))for(var s=0;s<t.length;){var n=t[s++],r=t[s++],a=0===r?{enumerable:!0,value:t[s++]}:{enumerable:!0,get:r};i.o(e,n)||Object.defineProperty(e,n,a)}else for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};let s={};i.r(s),i.d(s,{Accordion:()=>n.Accordion,Breadcrumbs:()=>r.Breadcrumbs,CodeBlock:()=>a.CodeBlock,CookieBanner:()=>o.CookieBanner,DateInputProgressive:()=>l.DateInputProgressive,ErrorSummary:()=>d.ErrorSummary,FileInputDroppable:()=>h.FileInputDroppable,Footer:()=>c.Footer,Gallery:()=>u.Gallery,GlobalHeader:()=>m.GlobalHeader,Header:()=>p.Header,Picture:()=>$.Picture,Sidebar:()=>b.Sidebar,SkipLink:()=>g.SkipLink,Tabs:()=>f.Tabs,TextAreaItemisedRows:()=>y.TextAreaItemisedRows,TextInputPassword:()=>v.TextInputPassword,checkTableForScroll:()=>A.DJ,updateTimeElement:()=>A.FH});var n=i(944),r=i(592),a=i(984),o=i(24),l=i(728),d=i(552),h=i(76),c=i(876),u=i(344),m=i(576),p=i(432),$=i(384),b=i(612),g=i(292),f=i(42),v=i(866),y=i(494),A=i(927);return i.d(s,["initAll",0,(e={})=>{const{scope:t}=e;let i=document;if(t){if(!(t instanceof HTMLElement))throw new Error("Scope must be an HTMLElement");i=t}const s=document.documentElement;s.classList.add("tna-template--js-enabled");const w=()=>{window.removeEventListener("touchstart",w),s.classList.add("tna-template--touched")};window.addEventListener("touchstart",w),window.addEventListener("keydown",e=>{"Tab"===e.key&&(s.classList.add("tna-template--tabbed"),s.classList.remove("tna-template--clicked"))}),window.addEventListener("mousedown",()=>{s.classList.add("tna-template--clicked"),s.classList.remove("tna-template--tabbed")});const L=i.querySelectorAll(".tna-table-wrapper");L.forEach(e=>(0,A.DJ)(e)),window.addEventListener("resize",()=>{L.forEach(e=>(0,A.DJ)(e))}),s.classList.contains("tna-template--enhance-time-elements")&&document.querySelectorAll("time[datetime]").forEach(A.FH),i.querySelectorAll('[data-module="tna-accordion"]').forEach(e=>{new n.Accordion(e)});const I=i.querySelector('[data-module="tna-breadcrumbs"]');I&&new r.Breadcrumbs(I),i.querySelectorAll('[data-module="tna-code-block"]').forEach(e=>{new a.CodeBlock(e)});const S=i.querySelector('[data-module="tna-cookie-banner"]');S&&new o.CookieBanner(S),i.querySelectorAll('[data-module="tna-date-input-progressive"]').forEach(e=>{new l.DateInputProgressive(e)});const E=i.querySelector('[data-module="tna-error-summary"]');E&&new d.ErrorSummary(E).init(),i.querySelectorAll('[data-module="tna-file-input"]').forEach(e=>{new h.FileInputDroppable(e)});const x=i.querySelector('[data-module="tna-footer"]');x&&new c.Footer(x),i.querySelectorAll('[data-module="tna-gallery"]').forEach(e=>{new u.Gallery(e)});const k=i.querySelector('[data-module="tna-global-header"]');k&&new m.GlobalHeader(k);const T=i.querySelector('[data-module="tna-header"]');T&&new p.Header(T),i.querySelectorAll('[data-module="tna-picture"]').forEach(e=>{new $.Picture(e)});const C=i.querySelector('[data-module="tna-sidebar-sections"]');if(C){const{scrollTopThreshold:e,disableHighlightSize:t}=C.dataset;new b.Sidebar(C,{scrollTopThreshold:e,disableHighlightSize:t})}i.querySelectorAll('[data-module="tna-skip-link"]').forEach(e=>{new g.SkipLink(e)}),i.querySelectorAll('[data-module="tna-tabs"]').forEach(e=>{new f.Tabs(e)}),i.querySelectorAll('[data-module="tna-textarea-itemised-rows"]').forEach(e=>{const{enhancedHint:t}=e.dataset;new y.TextAreaItemisedRows(e,{enhancedHint:t})}),i.querySelectorAll('[data-module="tna-text-input-password"]').forEach(e=>{new v.TextInputPassword(e)}),window.matchMedia("print").addEventListener("change",e=>{e.matches?(i.querySelectorAll(".tna-details__details:not([open])").forEach(e=>{e.setAttribute("open",""),e.dataset.wasClosed=""}),i.querySelectorAll(".tna-accordion__content[hidden], .tna-picture__transcript[hidden]").forEach(e=>{e.removeAttribute("hidden"),e.dataset.wasClosed=""})):(i.querySelectorAll(".tna-details__details[data-was-closed]").forEach(e=>{e.removeAttribute("open"),delete e.dataset.wasClosed}),i.querySelectorAll(".tna-accordion__content[data-was-closed], .tna-picture__transcript[data-was-closed]").forEach(e=>{e.setAttribute("hidden",""),e.dataset.wasClosed=""}))})}]),s})());
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.TNAFrontend=t():e.TNAFrontend=t()}(self,()=>(()=>{"use strict";var e={404(e,t,i){i.d(t,{A:()=>n});class s{events={};oneTimeEvents={};constructor(){if(window.TNAFrontendCookieEvents&&window.TNAFrontendCookieEvents instanceof s)return window.TNAFrontendCookieEvents;window.TNAFrontendCookieEvents=this}clearAll(){this.events={},this.oneTimeEvents={}}on(e,t){this.events[e]=[...this.events[e]||[],t]}once(e,t){this.oneTimeEvents[e]=[...this.oneTimeEvents[e]||[],t]}trigger(e,t={}){Object.hasOwn(this.events,e)&&this.events[e].forEach(e=>e.call(this,t)),Object.hasOwn(this.oneTimeEvents,e)&&(this.oneTimeEvents[e].forEach(e=>e.call(this,t)),this.oneTimeEvents[e]=[])}}class n{defaultDomain="";defaultPath="";secure=!0;preferencesKey="";events=null;defaultAge=null;preferencesCorrectOnInit=!1;tnaCookiePreferences=["usage","settings","marketing","essential"];constructor(e={}){const{defaultDomain:t,defaultPath:i,secure:n,preferencesKey:r,preferencesSetKey:a,defaultAge:o,noInit:l=!1}=e,d=document.documentElement.dataset;this.defaultDomain=t||d.tnaCookiesDomain||window.location.hostname,this.defaultPath=i||d.tnaCookiesPath||"/",this.secure=n||"true"!==d.tnaCookiesInsecure,this.preferencesKey=r||d.tnaCookiesPreferencesKey||"cookie_preferences",this.preferencesSetKey=a||d.tnaCookiesPreferencesSetKey||"cookie_preferences_set",this.defaultAge=o||parseInt(d.tnaCookiesDefaultAge,10)||31536e3,this.events=new s,this.preferencesCorrectOnInit=this.validatePreferences(this.preferences),this.preferencesCorrectOnInit||(this.preferencesSet=!1,l||this.init())}init(){const e=this.preferences,t=Object.fromEntries(Object.keys(e).filter(e=>this.tnaCookiePreferences.includes(e)).map(t=>[t,e[t]]));this.savePreferences({usage:!1,settings:!1,marketing:!1,...t,essential:!0})}validatePreferences(e){return Object.keys(e).length===this.tnaCookiePreferences.length&&this.tnaCookiePreferences.every(t=>Object.keys(e).includes(t)&&"boolean"==typeof e[t])}get all(){const e={};return document.cookie.split("; ").filter(e=>""!==e.trim()).filter(e=>e.includes("=")).forEach(t=>{const i=t.trim().split("="),[s,n=""]=i;e[s]=decodeURIComponent(n)}),e}get preferences(){try{return JSON.parse(this.get(this.preferencesKey)||"{}")}catch(e){return{}}}exists(e){return Object.hasOwn(this.all,e)}hasValue(e,t){return this.get(e)===t}get(e){if(this.exists(e))return decodeURIComponent(this.all[e])}set(e,t,i={}){const{maxAge:s=this.defaultAge,sameSite:n="Lax",domain:r=this.defaultDomain,path:a=this.defaultPath,secure:o=this.secure,session:l=!1}=i;if(!e)return;const d=o?"; secure":"",h=l?"":`; max-age=${s}`,c=`${encodeURIComponent(e)}=${encodeURIComponent(t)}; domain=${r}; samesite=${n}; path=${a}${h}${d}`;document.cookie=c;const u={key:e,value:t,maxAge:s,path:a,sameSite:n,domain:r,secure:o,session:l,cookie:c};this.events.trigger("setCookie",u)}delete(e,t="/",i=this.defaultDomain){const s={maxAge:-1,path:t,domain:i};this.set(e,"",s),this.events.trigger("deleteCookie",{key:e,...s})}deleteAll(e="/",t=this.defaultDomain){Object.keys(this.all).forEach(i=>{this.delete(i,e,t)});const i={path:e,domain:t};this.events.trigger("deleteAllCookies",i)}enablePreference(e){if(!Object.hasOwn(this.preferences,e))throw new Error(`Preference '${e}' does not exist`);this.setPreference(e,!0),this.events.trigger("enablePreference",e),this.events.trigger("changePreference",{[e]:!0})}disablePreference(e){if(!Object.hasOwn(this.preferences,e))throw new Error(`Preference '${e}' does not exist`);this.setPreference(e,!1),this.events.trigger("disablePreference",e),this.events.trigger("changePreference",{[e]:!1})}setPreference(e,t){if(!Object.hasOwn(this.preferences,e))throw new Error(`Preference '${e}' does not exist`);"essential"!==e&&(this.savePreferences({...this.preferences,[e]:t,essential:!0}),this.events.trigger("changePreference",{[e]:t}))}enableAllPreferences(){const e=Object.fromEntries(Object.keys(this.preferences).map(e=>[e.toLowerCase(),!0]));this.savePreferences(e),this.preferencesSet=!0,this.events.trigger("enableAllPreferences"),this.events.trigger("changePreference",e)}disableAllPreferences(){const e={...Object.fromEntries(Object.keys(this.preferences).map(e=>[e.toLowerCase(),!1])),essential:!0};this.savePreferences(e),this.preferencesSet=!0,this.events.trigger("disableAllPreferences"),this.events.trigger("changePreference",e)}savePreferences(e){this.set(this.preferencesKey,JSON.stringify(e))}get preferencesSet(){return this.hasValue(this.preferencesSetKey,"true")}set preferencesSet(e){!0===e&&this.validatePreferences(JSON.parse(this.get(this.preferencesKey)))?this.set(this.preferencesSetKey,"true"):this.delete(this.preferencesSetKey),this.events.trigger("preferencesSet")}preference(e){if(Object.hasOwn(this.preferences,e))return!0===this.preferences[e];throw new Error(`Preference '${e}' does not exist`)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}}},944(e,t,i){i.d(t,{Accordion:()=>n});var s=i(927);class n{constructor(e){this.$module=e,this.$items=e&&e.querySelectorAll(".tna-accordion__item"),this.$module&&this.$items&&(this.allowMultipleItemsOpen="true"!==this.$module.dataset.singleOpenItem,this.$items.forEach(e=>this.initItem(e)),this.initState(),this.$toggleAllButton=this.$module.querySelector(".tna-accordion__toggle-all"),this.$toggleAllButton&&(this.syncToggleAllButton(),this.$toggleAllButton.removeAttribute("hidden"),this.$toggleAllButton.addEventListener("click",()=>{this.isAllOpen()?this.$items.forEach(e=>this.closeItem(e)):this.$items.forEach(e=>this.openItem(e)),this.syncToggleAllButton()})))}initItem(e){const t=e.querySelector(".tna-accordion__heading"),i=e.querySelector(".tna-accordion__body");if(!t||!i)return;e.classList.add("tna-accordion__details"),e.classList.remove("tna-accordion__item"),t.removeAttribute("class"),i.classList.add("tna-accordion__content"),i.classList.remove("tna-accordion__body"),i.setAttribute("hidden","");const s=document.createElement("button");s.classList.add("tna-accordion__summary"),s.setAttribute("type","button"),s.setAttribute("aria-controls",i.id),s.innerText=t.innerText,t.innerText="",t.appendChild(s),s.addEventListener("click",()=>{"true"===s.getAttribute("aria-expanded")?this.closeItem(e):this.openItem(e)})}initState(){this.$items.forEach(e=>{"true"===e.dataset.isopen?this.openItem(e):this.closeItem(e),e.removeAttribute("data-isopen")})}openItem(e){this.allowMultipleItemsOpen||this.closeAllItemsExcept(e);const t=e.querySelector(".tna-accordion__summary"),i=e.querySelector(".tna-accordion__content");t.setAttribute("aria-expanded","true"),t.setAttribute("aria-label",`${t.innerText.trim()}, Hide this section`),i.removeAttribute("hidden"),this.syncToggleAllButton();const n=i.querySelectorAll(".tna-table-wrapper");n&&n.forEach(e=>{(0,s.DJ)(e)})}closeItem(e){const t=e.querySelector(".tna-accordion__summary"),i=e.querySelector(".tna-accordion__content");t.setAttribute("aria-expanded","false"),t.setAttribute("aria-label",`${t.innerText.trim()}, Show this section`),i.setAttribute("hidden",""),this.syncToggleAllButton()}closeAllItemsExcept(e){Array.from(this.$items).filter(t=>t.querySelector(".tna-accordion__summary")!==e&&"true"===t.querySelector(".tna-accordion__summary").getAttribute("aria-expanded")).forEach(e=>this.closeItem(e))}isAllOpen(){return Array.from(this.$items).every(e=>"true"===e.querySelector(".tna-accordion__summary").getAttribute("aria-expanded"))}syncToggleAllButton(){this.$toggleAllButton&&(this.isAllOpen()?this.$toggleAllButton.innerText=this.$toggleAllButton.dataset.closeAllLabel||"Hide all sections":this.$toggleAllButton.innerText=this.$toggleAllButton.dataset.openAllLabel||"Show all sections")}}},592(e,t,i){i.d(t,{Breadcrumbs:()=>n});var s=i(181);class n{constructor(e){this.$module=e,this.$breadcrumbsList=e&&e.querySelector(".tna-breadcrumbs__list"),this.$breadcrumbs=e&&this.$breadcrumbsList&&e.querySelectorAll(".tna-breadcrumbs__item"),this.$module&&this.$breadcrumbsList&&this.$breadcrumbs&&this.$breadcrumbs.length>2&&!this.$module.classList.contains("tna-breadcrumbs--no-collapse")&&this.init()}init(){const e=`tna-breadcrumbs-${(0,s.A)()}`,t=document.createElement("li");t.classList.add("tna-breadcrumbs__item","tna-breadcrumbs__item--expandable"),t.style.display="none";const i=document.createElement("button");i.classList.add("tna-breadcrumbs__link"),i.innerHTML="<span class='tna-!--visually-hidden'>Expand breadcrumbs</span>&hellip;",i.setAttribute("type","button"),i.setAttribute("aria-expanded","false"),i.setAttribute("aria-controls",e),i.addEventListener("click",()=>{this.$module.classList.remove("tna-breadcrumbs--collapsed"),t.remove(),this.$module.setAttribute("tabindex","0"),this.$module.focus(),this.$module.addEventListener("blur",()=>{this.$module.removeAttribute("tabindex")},{once:!0})}),t.appendChild(i),this.$breadcrumbsList.setAttribute("id",e),this.$breadcrumbsList.insertBefore(t,this.$breadcrumbs[this.$breadcrumbs.length-2].nextSibling),this.$module.classList.add("tna-breadcrumbs--collapsed")}}},984(e,t,i){i.d(t,{CodeBlock:()=>s});class s{constructor(e){this.$module=e,this.$code=this.$module.querySelector("pre code"),this.$copyButton=this.$module.querySelector(".tna-code-block__copy"),this.$module&&this.$code&&this.$copyButton&&navigator.clipboard&&(this.$copyButton.removeAttribute("hidden"),this.$module.classList.add("tna-code-block__copyable"),this.$copyButton.addEventListener("click",async()=>{try{await navigator.clipboard.writeText(this.$code.innerText),this.$copyButton.innerText="Code copied"}catch{}}),this.$copyButton.addEventListener("blur",()=>{this.$copyButton.innerText="Copy code"}))}}},24(e,t,i){i.d(t,{CookieBanner:()=>n});var s=i(404);class n{constructor(e){this.$module=e,this.$acceptButton=e&&e.querySelector('[value="accept"]'),this.$rejectButton=e&&e.querySelector('[value="reject"]'),this.$prompt=e&&e.querySelector(".tna-cookie-banner__message--prompt"),this.$acceptedMessage=e&&e.querySelector(".tna-cookie-banner__message--accepted"),this.$rejectedMessage=e&&e.querySelector(".tna-cookie-banner__message--rejected"),this.$closeButtons=e&&e.querySelectorAll('[value="close"]'),this.$module&&this.$acceptButton&&this.$rejectButton&&this.$prompt&&this.$acceptedMessage&&this.$rejectedMessage&&this.$closeButtons&&(this.cookies=new s.A,this.cookies.preferencesSet||(this.$module.removeAttribute("hidden"),this.$acceptButton.addEventListener("click",()=>this.accept()),this.$rejectButton.addEventListener("click",()=>this.reject()),this.$closeButtons.forEach(e=>{e.addEventListener("click",()=>this.close())})))}accept(){this.cookies.enableAllPreferences(),this.showPanel(this.$acceptedMessage)}reject(){this.cookies.disableAllPreferences(),this.showPanel(this.$rejectedMessage)}showPanel(e){this.$prompt.setAttribute("hidden",""),e.removeAttribute("hidden"),e.setAttribute("tabindex","0"),e.focus(),e.addEventListener("blur",()=>{e.removeAttribute("tabindex")})}close(){this.$module.setAttribute("hidden","")}}},728(e,t,i){i.d(t,{DateInputProgressive:()=>s});class s{constructor(e){this.$module=e,this.$yearWrapper=e&&e.querySelector(".tna-date-input__item--year"),this.$yearInput=this.$yearWrapper&&this.$yearWrapper.querySelector("input"),this.$monthWrapper=e&&e.querySelector(".tna-date-input__item--month"),this.$monthInput=this.$monthWrapper&&this.$monthWrapper.querySelector("input"),this.$dayWrapper=e&&e.querySelector(".tna-date-input__item--day"),this.$dayInput=this.$dayWrapper&&this.$dayWrapper.querySelector("input"),this.$module&&(this.update(),window.addEventListener("pageshow",()=>this.update()),this.$yearInput&&(this.$yearInput.addEventListener("keyup",()=>this.update()),this.$yearInput.addEventListener("change",()=>this.update())),this.$monthInput&&(this.$monthInput.addEventListener("keyup",()=>this.update()),this.$monthInput.addEventListener("change",()=>this.update())),this.$dayInput&&(this.$dayInput.addEventListener("keyup",()=>this.update()),this.$dayInput.addEventListener("change",()=>this.update())))}update(){this.isValidYear()?(this.showMonth(),this.isValidMonth()?this.showDay():this.hideDay()):(this.hideMonth(),this.hideDay())}isValidYear(){if(!this.$yearInput)return!0;const e=parseInt(this.$yearInput.value.trim(),10);return!isNaN(this.$yearInput.value)&&!isNaN(e)&&e>0}isValidMonth(){if(!this.$monthInput)return!0;const e=this.$monthInput.value.trim(),t=parseInt(e,10);return!isNaN(this.$monthInput.value)&&!isNaN(t)&&t>0&&t<=12||["january","february","march","april","may","june","july","august","september","october","november","december","jan","feb","mar","apr","jun","jul","aug","sep","oct","nov","dec"].includes(e.toLowerCase())}showMonth(){this.$monthWrapper&&this.$monthWrapper.removeAttribute("hidden")}hideMonth(){this.$monthWrapper&&this.$monthWrapper.setAttribute("hidden","")}showDay(){this.$dayWrapper&&this.$dayWrapper.removeAttribute("hidden")}hideDay(){this.$dayWrapper&&this.$dayWrapper.setAttribute("hidden","")}}},552(e,t,i){i.d(t,{ErrorSummary:()=>s});class s{constructor(e){this.$module=e}init(){this.$module&&("true"===this.$module.dataset.disableAutofocus||this.setFocus(this.$module),this.$module.addEventListener("click",e=>this.handleClick(e)))}setFocus(e,t={}){const i=e.getAttribute("tabindex");function s(){t.onBlur?.call(e),i||e.removeAttribute("tabindex")}i||e.setAttribute("tabindex","-1"),e.addEventListener("focus",function(){e.addEventListener("blur",s,{once:!0})},{once:!0}),t.onBeforeFocus?.call(e),e.focus()}handleClick(e){const t=e.target;t&&this.focusTarget(t)&&e.preventDefault()}getFragmentFromUrl(e){return e.includes("#")?e.split("#").pop():null}focusTarget(e){if(!(e instanceof HTMLAnchorElement))return!1;const t=this.getFragmentFromUrl(e.href);if(!t)return!1;const i=document.getElementById(t);if(!i)return!1;const s=this.getAssociatedLegendOrLabel(i);return!!s&&(s.scrollIntoView(),i.focus({preventScroll:!0}),!0)}getAssociatedLegendOrLabel(e){const t=e.closest("fieldset");if(t){const i=t.getElementsByTagName("legend");if(i.length){const[t]=i;if(e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type))return t;const s=t.getBoundingClientRect().top,n=e.getBoundingClientRect();if(n.height&&window.innerHeight&&n.top+n.height-s<window.innerHeight/2)return t}}return document.querySelector(`label[for='${e.getAttribute("id")}']`)??e.closest("label")}}},76(e,t,i){i.d(t,{FileInputDroppable:()=>s});class s{constructor(e){this.$module=e,this.$body=e&&e.querySelector(".tna-form-item__body"),this.$input=this.$body&&this.$body.querySelector(".tna-file-input"),this.$module&&this.$body&&this.$input&&(this.acceptMutltipleFiles=this.$input.hasAttribute("multiple"),this.init())}init(){this.$droppableArea=document.createElement("div"),this.$droppableArea.classList.add("tna-file-input__droppable","tna-file-input__droppable--empty"),this.$body.insertBefore(this.$droppableArea,this.$input),this.$droppableArea.appendChild(this.$input),this.$pseudoSelectFileText=document.createElement("span"),this.$pseudoSelectFileText.setAttribute("aria-live","polite"),this.$pseudoSelectFileText.classList.add("tna-file-input__droppable-status");const e=this.acceptMutltipleFiles?"files":"file";this.$pseudoSelectFileText.textContent=`No ${e} selected`,this.$droppableArea.appendChild(this.$pseudoSelectFileText);const t=document.createElement("div");t.classList.add("tna-button-group","tna-button-group--small","tna-!--margin-top-s","tna-file-input__droppable-buttons"),this.$droppableArea.appendChild(t);const i=document.createElement("span");i.classList.add("tna-button"),i.textContent=`Choose ${e}`,t.appendChild(i);const s=document.createElement("span");s.textContent=`or drop ${e}`,t.appendChild(s),this.$droppableAreaAriaLabel=document.createElement("span"),this.$droppableAreaAriaLabel.classList.add("tna-visually-hidden"),this.$droppableAreaAriaLabel.setAttribute("aria-live","assertive"),this.$droppableArea.appendChild(this.$droppableAreaAriaLabel),this.$input.addEventListener("dragenter",e=>this.showDropTarget(e)),this.$input.addEventListener("dragleave",()=>this.hideDropTarget()),this.$input.addEventListener("dragend",()=>this.hideDropTarget()),this.$input.addEventListener("change",()=>this.onChange()),this.$input.addEventListener("drop",()=>this.onChange())}isContainingFiles(e){const t=!e.types.length,i=e.types.some(e=>"Files"===e);return t||i}showDropTarget(e,t=!0){if(e.dataTransfer&&this.isContainingFiles(e.dataTransfer)){let i="tna-file-input__droppable--over";e.dataTransfer.items.length&&(i="tna-file-input__droppable--over-multiple"),this.$droppableArea.classList.add(i),t&&(this.$droppableAreaAriaLabel.textContent="Entered drop zone")}}hideDropTarget(e=!0){this.$droppableArea.classList.remove("tna-file-input__droppable--over","tna-file-input__droppable--over-multiple"),e&&(this.$droppableAreaAriaLabel.textContent="Left drop zone")}onChange(){const{files:e}=this.$input;if(this.acceptMutltipleFiles)if(e.length){let t="file";e.length>1&&(t+="s");const i=`${e.length} ${t} selected`;this.$pseudoSelectFileText.textContent=i}else this.$pseudoSelectFileText.textContent="No files selected";else this.$pseudoSelectFileText.textContent=e[0]?.name||"No file selected";e.length?this.$droppableArea.classList.remove("tna-file-input__droppable--empty"):this.$droppableArea.classList.add("tna-file-input__droppable--empty"),this.hideDropTarget(!1)}}},876(e,t,i){i.d(t,{Footer:()=>n});var s=i(404);class n{constructor(e,t="theme"){this.$module=e,this.$themeSelector=e&&e.querySelector(".tna-footer__theme-selector"),this.$themeSelectorNotice=e&&e.querySelector(".tna-footer__theme-selector-notice"),this.$themeSelectorEnableSettingsCookiesButton=this.$themeSelectorNotice&&this.$themeSelectorNotice.querySelector(".tna-footer__theme-selector-enable-settings-cookies"),this.$tnaTemplate=document.querySelector(".tna-template"),this.$module&&this.$themeSelector&&this.$themeSelectorNotice&&this.$themeSelectorEnableSettingsCookiesButton&&this.$tnaTemplate&&(this.themeCookieName=t,this.init())}init(){this.currentTheme=this.$themeSelector.dataset.themeOnLoad,this.cookies=new s.A,this.$themeSelectorButtons=this.$themeSelector.querySelectorAll("button.tna-footer__theme-selector-button[value]"),Array.from(this.$themeSelectorButtons).forEach(e=>{e.addEventListener("click",e=>{const t=e.target;this.setTheme(t.value),this.selectThemeSelectorButton(t)})}),this.$themeSelectorEnableSettingsCookiesButton.addEventListener("click",()=>{this.cookies.enablePreference("settings")}),this.showThemeSelector(),this.cookies.on("changePreference",e=>{Object.hasOwn(e,"settings")&&(!0===e.settings?(this.cookies.set(this.themeCookieName,this.currentTheme),this.$themeSelectorNotice.setAttribute("hidden","")):(this.cookies.delete(this.themeCookieName),this.$themeSelectorNotice.removeAttribute("hidden")))})}showThemeSelector(){if(this.$themeSelector.removeAttribute("hidden"),this.cookies.exists(this.themeCookieName)){const e=Array.from(this.$themeSelectorButtons).find(e=>e.value===this.cookies.get(this.themeCookieName));e&&this.selectThemeSelectorButton(e)}this.cookies.preference("settings")||this.$themeSelectorNotice.removeAttribute("hidden")}setTheme(e){if("light"===e)this.$tnaTemplate.classList.remove("tna-template--system-theme","tna-template--dark-theme");else if("dark"===e)this.$tnaTemplate.classList.remove("tna-template--system-theme"),this.$tnaTemplate.classList.add("tna-template--dark-theme");else{if("system"!==e)return;this.$tnaTemplate.classList.remove("tna-template--dark-theme"),this.$tnaTemplate.classList.add("tna-template--system-theme")}this.currentTheme=e,this.cookies.preference("settings")?this.cookies.set(this.themeCookieName,this.currentTheme):this.$themeSelectorNotice.removeAttribute("hidden")}selectThemeSelectorButton(e){Array.from(this.$themeSelectorButtons).forEach(t=>{t.value===e.value?(t.classList.remove("tna-button--plain"),t.setAttribute("aria-current",!0)):(t.classList.add("tna-button--plain"),t.removeAttribute("aria-current"))})}}},344(e,t,i){i.d(t,{Gallery:()=>s});class s{constructor(e){this.$module=e,this.$itemsContainer=e&&e.querySelector(".tna-gallery__items"),this.$items=this.$itemsContainer&&this.$itemsContainer.querySelectorAll(".tna-gallery__item"),this.$navigation=e&&e.querySelector(".tna-gallery__navigation"),this.$navigationItems=this.$navigation&&e.querySelectorAll(".tna-gallery__navigation-item"),this.$navigationButtons=e&&e.querySelector(".tna-gallery__navigation-buttons"),this.$module&&this.$itemsContainer&&this.$items&&!(this.$items.length<2)&&this.$navigation&&this.$navigationItems&&this.$navigationButtons&&(this.$module.classList.add("tna-gallery--interactive"),this.$navigationButtonPrev=this.$navigationButtons.querySelector(".tna-gallery__navigation-prev"),this.$navigationButtonNext=this.$navigationButtons.querySelector(".tna-gallery__navigation-next"),this.setup(),this.currentId=this.$items[0].id,this.showItem(this.currentId))}setup(){this.$items.forEach(e=>{e.setAttribute("hidden",""),e.setAttribute("aria-hidden","true"),e.querySelector(".tna-gallery__item-header")?.setAttribute("aria-hidden","true")}),this.$navigation.removeAttribute("hidden"),this.$navigationItems.forEach(e=>{e.addEventListener("click",()=>{this.showItem(e.getAttribute("aria-controls")),this.$itemsContainer.setAttribute("tabindex","0"),this.$itemsContainer.focus()})}),this.$module.addEventListener("keydown",e=>{let t=!1;switch(e.key){case"ArrowLeft":case"ArrowUp":this.showPreviousItem(),t=!0;break;case"ArrowRight":case"ArrowDown":this.showNextItem(),t=!0;break;case"Home":this.showFirstItem(),t=!0;break;case"End":this.showLastItem(),t=!0}t&&(e.stopPropagation(),e.preventDefault())}),this.$navigationButtons?.removeAttribute("hidden"),this.$navigationButtonPrev?.addEventListener("click",()=>{this.showPreviousItem()}),this.$navigationButtonNext?.addEventListener("click",()=>{this.showNextItem()}),this.$liveRegion=document.createElement("div"),this.$liveRegion.setAttribute("aria-live","polite"),this.$liveRegion.setAttribute("aria-atomic","true"),this.$liveRegion.setAttribute("class","tna-gallery__item-header"),this.$itemsContainer.prepend(this.$liveRegion),this.$itemsContainer.classList.add("tna-gallery__items--hide-item-titles"),this.$itemsContainer.addEventListener("blur",()=>this.$itemsContainer.removeAttribute("tabindex"))}showItem(e){this.$items.forEach(t=>{e&&t.id===e?(t.removeAttribute("hidden"),t.removeAttribute("aria-hidden")):(t.setAttribute("hidden",""),t.setAttribute("aria-hidden","true"))}),this.$navigationItems.forEach(t=>{e&&t.getAttribute("aria-controls")===e?t.setAttribute("aria-current","true"):t.setAttribute("aria-current","false")}),this.currentId=e,this.$liveRegion.textContent=`Image ${this.getCurrentItemIndex()+1} of ${this.$items.length}`}getCurrentItemIndex(){return Array.from(this.$items).findIndex(e=>e.id===this.currentId)}showPreviousItem(){let e=this.getCurrentItemIndex()-1;e<0&&(e=this.$items.length-1),this.showItem(this.$items[e].id)}showNextItem(){let e=this.getCurrentItemIndex()+1;e>=this.$items.length&&(e=0),this.showItem(this.$items[e].id)}showFirstItem(){this.showItem(this.$items[0].id)}showLastItem(){this.showItem(this.$items[this.$items.length-1].id)}}},576(e,t,i){i.d(t,{GlobalHeader:()=>s});class s{constructor(e){this.$module=e,this.$toggleButton=e&&e.querySelector(".tna-global-header__navigation-button"),this.$navigation=e&&e.querySelector(".tna-global-header__navigation-wrapper"),this.$topNavigation=e&&e.querySelector(".tna-global-header__top-navigation-wrapper"),this.$links=e&&(this.$navigation&&this.$navigation.querySelectorAll("[tabindex='0']")||this.$topNavigation&&this.$topNavigation.querySelectorAll("[tabindex='0']")),this.menuOpened=!1,this.mql=window.matchMedia("(max-width: 48em)"),this.$module&&this.$toggleButton&&(this.$navigation||this.$topNavigation)&&(this.$toggleButton.removeAttribute("hidden"),this.syncState(),this.$toggleButton.addEventListener("click",()=>this.handleToggleNavigation()),"addEventListener"in this.mql?this.mql.addEventListener("change",()=>this.syncState()):this.mql.addListener(()=>this.syncState()),this.$module.addEventListener("keyup",e=>{"Escape"===e.code&&this.mql.matches&&this.menuOpened&&(this.menuOpened=!1,this.syncState(),this.$toggleButton.focus())}))}handleToggleNavigation(){this.menuOpened=!this.menuOpened,this.syncState()}syncState(){this.mql.matches?this.menuOpened?this.show():this.hide():this.show()}hide(){this.$navigation&&(this.$navigation.hidden=!0,this.$navigation.setAttribute("aria-hidden","true")),this.$topNavigation&&(this.$topNavigation.hidden=!0,this.$topNavigation.setAttribute("aria-hidden","true")),this.$toggleButton.setAttribute("aria-expanded","false"),this.$toggleButton.setAttribute("title","Open menu"),this.$toggleButton.classList.remove("tna-global-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","-1")}show(){this.$navigation&&(this.$navigation.hidden=!1,this.$navigation.setAttribute("aria-hidden","false")),this.$topNavigation&&(this.$topNavigation.hidden=!1,this.$topNavigation.setAttribute("aria-hidden","false")),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu"),this.$toggleButton.classList.add("tna-global-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","0")}}},432(e,t,i){i.d(t,{Header:()=>s});class s{constructor(e){this.$module=e,this.$toggleButton=e&&e.querySelector(".tna-header__navigation-button"),this.$navigation=e&&e.querySelector(".tna-header__navigation"),this.$links=e&&this.$navigation&&this.$navigation.querySelectorAll("[tabindex='0']"),this.menuOpened=!1,this.mql=window.matchMedia("(max-width: 48em)"),this.$module&&this.$toggleButton&&this.$navigation&&(this.$toggleButton.removeAttribute("hidden"),this.syncState(),this.$toggleButton.addEventListener("click",()=>this.handleToggleNavigation()),"addEventListener"in this.mql?this.mql.addEventListener("change",()=>this.syncState()):this.mql.addListener(()=>this.syncState()),this.$module.addEventListener("keyup",e=>{"Escape"===e.code&&this.menuOpened&&this.mql.matches&&(this.menuOpened=!1,this.syncState(),this.$toggleButton.focus())}))}handleToggleNavigation(){this.menuOpened=!this.menuOpened,this.syncState()}syncState(){this.mql.matches?this.menuOpened?this.show():this.hide():this.show()}show(){this.$navigation.classList.add("tna-header__navigation--open"),this.$navigation.removeAttribute("hidden"),this.$navigation.setAttribute("aria-hidden","false"),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu"),this.$toggleButton.classList.add("tna-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","0")}hide(){this.$navigation.classList.remove("tna-header__navigation--open"),this.$navigation.hidden=!0,this.$navigation.setAttribute("aria-hidden","true"),this.$toggleButton.setAttribute("aria-expanded","false"),this.$toggleButton.setAttribute("title","Open menu"),this.$toggleButton.classList.remove("tna-header__navigation-button--opened");for(let e=0;e<this.$links.length;e+=1)this.$links[e].setAttribute("tabindex","-1")}}},384(e,t,i){i.d(t,{Picture:()=>n});var s=i(181);class n{constructor(e){this.$module=e,this.$imageWrapper=e&&e.querySelector(".tna-picture__image-wrapper"),this.$transcriptToggle=this.$imageWrapper&&this.$imageWrapper.querySelector(".tna-picture__toggle-transcript"),this.$transcript=e&&e.querySelector(".tna-picture__transcript"),this.transcriptOpened=!1,this.$module&&this.$imageWrapper&&this.$transcriptToggle&&this.$transcript&&(this.openLabel=this.$module.dataset.informationLabelOpen||"Open transcript",this.closeLabel=this.$module.dataset.informationLabelClose||"Close transcript",this.init())}init(){const e=`tna-picture-${(0,s.A)()}`;this.$transcriptToggle.removeAttribute("hidden"),this.$transcriptToggle.setAttribute("aria-controls",e),this.$transcriptToggle.innerText=this.openLabel,this.$transcriptToggle.addEventListener("click",()=>this.toggleTranscript()),this.$transcript.setAttribute("id",e),this.$transcript.setAttribute("hidden",""),this.$transcript.addEventListener("keydown",e=>{"Escape"===e.key&&(this.toggleTranscript(),this.$transcriptToggle.focus())})}toggleTranscript(){this.transcriptOpened=!this.transcriptOpened,this.transcriptOpened?(this.$transcriptToggle.setAttribute("aria-expanded",!0),this.$transcriptToggle.innerText=this.closeLabel,this.$transcript.removeAttribute("hidden")):(this.$transcriptToggle.setAttribute("aria-expanded",!1),this.$transcriptToggle.innerText=this.openLabel,this.$transcript.setAttribute("hidden",""))}}},612(e,t,i){i.d(t,{Sidebar:()=>s});class s{constructor(e,t={}){if(this.$module=e,this.items=e&&Array.from(e.querySelectorAll(".tna-sidebar__item")).map(e=>{const t=e.querySelector(".tna-sidebar__link[href^='#']").getAttribute("href").substring(1);return{$item:e,id:t,target:document.getElementById(t)}}).filter(e=>e.target),!this.$module||!this.items)return;const{scrollTopThreshold:i=0,disableHighlightSize:s="small"}=t;this.scrollTopThreshold=i,this.disableHighlightSize=s,this.init()}init(){if(this.breakpoints={tiny:getComputedStyle(document.documentElement).getPropertyValue("--media-breakpoint-tiny")||"480px",small:getComputedStyle(document.documentElement).getPropertyValue("--media-breakpoint-small")||"768px",medium:getComputedStyle(document.documentElement).getPropertyValue("--media-breakpoint-medium")||"1024px"},this.disableHighlightSize){if(!Object.keys(this.breakpoints).includes(this.disableHighlightSize))throw new Error(`Invalid value for disableHighlightSize: ${this.disableHighlightSize}. Expected one of: ${Object.keys(this.breakpoints).join(", ")}`);this.hideOnDevice=window.matchMedia(`(max-width: ${this.breakpoints[this.disableHighlightSize]})`)}else this.hideOnDevice=null;this.currentItem=null,window.addEventListener("scroll",()=>this.highlightCurrentSection()),window.addEventListener("resize",()=>this.highlightCurrentSection()),this.highlightCurrentSection()}highlightCurrentSection(){if(this.hideOnDevice&&this.hideOnDevice.matches)return this.items.forEach(e=>{e.$item.classList.remove("tna-sidebar__item--current")}),void(this.currentItem=null);const e=this.items.findLast(e=>Math.floor(e.target.getBoundingClientRect().top)<=this.scrollTopThreshold);e!==this.currentItem&&this.items.forEach(t=>{e&&t===e?(this.currentItem=t,this.currentItem.$item.classList.add("tna-sidebar__item--current")):t.$item.classList.remove("tna-sidebar__item--current")}),this.currentItem=e||null}}},292(e,t,i){i.d(t,{SkipLink:()=>s});class s{linkedElementListener=!1;constructor(e){this.$module=e,this.linkedElementId=e.getAttribute("href")?.split("#").pop(),this.$linkedElement=e&&this.linkedElementId&&document.getElementById(this.linkedElementId),this.$module&&this.$linkedElement&&this.$module.addEventListener("click",()=>this.focusLinkedElement())}focusLinkedElement(){this.$linkedElement.getAttribute("tabindex")||(this.$linkedElement.setAttribute("tabindex","-1"),this.$linkedElement.classList.add("tna-!--no-focus-style"),this.linkedElementListener||(this.$linkedElement.addEventListener("blur",()=>this.removeFocusProperties()),this.linkedElementListener=!0)),this.$linkedElement.focus()}removeFocusProperties(){this.$linkedElement.removeAttribute("tabindex"),this.$linkedElement.classList.remove("tna-!--no-focus-style")}}},42(e,t,i){i.d(t,{Tabs:()=>s});class s{constructor(e){this.$module=e,this.$tabList=e&&e.querySelector(".tna-tabs__list"),this.$tabListItemLinks=e&&this.$tabList&&this.$tabList.querySelectorAll(".tna-tabs__button"),this.$tabItems=e&&e.querySelectorAll(".tna-tabs__item"),this.$module&&this.$tabList&&this.$tabListItemLinks&&this.$tabItems&&this.$tabListItemLinks.length===this.$tabItems.length&&(this.currentTabIndex=this.$module.dataset.activeTabOnLoad?parseInt(this.$module.dataset.activeTabOnLoad,10):0,this.allowClose="true"===this.$module.dataset.allowClose,this.init())}init(){this.$module.classList.add("tna-tabs--interactive"),this.$tabList.removeAttribute("hidden"),this.$tabListItemLinks.forEach(e=>{const t=e.getAttribute("aria-controls");e.setAttribute("aria-selected",!1);const i=document.getElementById(t);i.setAttribute("aria-labelledby",e.id),i.setAttribute("role","tabpanel"),e.addEventListener("click",e=>this.handleItemLinkClick(e),!0)}),this.switchTabByIndex(this.currentTabIndex),this.$module.addEventListener("keydown",e=>this.handleItemLinkKeyDown(e))}handleItemLinkClick(e){e.preventDefault();const t=e.currentTarget.getAttribute("aria-controls");this.switchTabByID(t)}handleItemLinkKeyDown(e){let t=!1;switch(e.key){case"ArrowLeft":case"ArrowUp":this.previousTab(),t=!0;break;case"ArrowRight":case"ArrowDown":this.nextTab(),t=!0;break;case"Home":this.switchTabByIndex(0,!0,!0),t=!0;break;case"End":this.switchTabByIndex(this.$tabListItemLinks.length-1,!0,!0),t=!0}t&&(e.stopPropagation(),e.preventDefault())}nextTab(){this.currentTabIndex<this.$tabListItemLinks.length-1?this.switchTabByIndex(this.currentTabIndex+1,!0):this.switchTabByIndex(0,!0)}previousTab(){this.currentTabIndex>=1?this.switchTabByIndex(this.currentTabIndex-1,!0):this.switchTabByIndex(this.$tabListItemLinks.length-1,!0)}switchTabByIndex(e,t=!1,i=!1){this.currentTabIndex=e,"true"===this.$tabListItemLinks[this.currentTabIndex]?.getAttribute("aria-selected").toString()&&this.allowClose&&!i&&(this.currentTabIndex=-1),this.$tabListItemLinks.forEach((e,i)=>{i===this.currentTabIndex?(e.setAttribute("aria-selected",!0),e.setAttribute("tabindex","0"),t&&e.focus()):(e.setAttribute("aria-selected",!1),e.setAttribute("tabindex",-1===this.currentTabIndex?"0":"-1"))}),this.$tabItems.forEach((e,t)=>{t===this.currentTabIndex?(e.removeAttribute("hidden"),e.setAttribute("tabindex","0")):(e.setAttribute("hidden",""),e.setAttribute("tabindex",-1===this.currentTabIndex?"0":"-1"))})}switchTabByID(e){const t=Array.from(this.$tabItems).findIndex(t=>t.getAttribute("id")===e);this.switchTabByIndex(t)}}},866(e,t,i){i.d(t,{TextInputPassword:()=>s});class s{constructor(e){this.$module=e,this.$input=e&&e.querySelector(".tna-text-input"),this.$module&&this.$input&&"password"===this.$input.getAttribute("type")&&(this.$textInputWrapper=document.createElement("div"),this.$textInputWrapper.classList.add("tna-text-input-wrapper"),this.$textInputPasswordToggle=document.createElement("button"),this.$textInputPasswordToggle.setAttribute("type","button"),this.$textInputPasswordToggle.classList.add("tna-button","tna-button--small","tna-button--icon-only"),this.$textInputPasswordToggle.setAttribute("aria-controls",this.$input.id),this.updateTogglePasswordButtonText(),this.$textInputWrapper.appendChild(this.$input),this.$textInputWrapper.appendChild(this.$textInputPasswordToggle),this.$module.appendChild(this.$textInputWrapper),this.$textInputPasswordToggle.addEventListener("click",()=>{this.togglePasswordType(),this.$input.focus()}))}togglePasswordType(){"password"===this.$input.getAttribute("type")?this.$input.setAttribute("type","text"):this.$input.setAttribute("type","password"),this.updateTogglePasswordButtonText()}updateTogglePasswordButtonText(){"password"===this.$input.getAttribute("type")?(this.$textInputPasswordToggle.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" height="24" aria-hidden="true" focusable="false">\x3c!--!Font Awesome Free v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--\x3e<path d="M320 96C239.2 96 174.5 132.8 127.4 176.6C80.6 220.1 49.3 272 34.4 307.7C31.1 315.6 31.1 324.4 34.4 332.3C49.3 368 80.6 420 127.4 463.4C174.5 507.1 239.2 544 320 544C400.8 544 465.5 507.2 512.6 463.4C559.4 419.9 590.7 368 605.6 332.3C608.9 324.4 608.9 315.6 605.6 307.7C590.7 272 559.4 220 512.6 176.6C465.5 132.9 400.8 96 320 96zM176 320C176 240.5 240.5 176 320 176C399.5 176 464 240.5 464 320C464 399.5 399.5 464 320 464C240.5 464 176 399.5 176 320zM320 256C320 291.3 291.3 320 256 320C244.5 320 233.7 317 224.3 311.6C223.3 322.5 224.2 333.7 227.2 344.8C240.9 396 293.6 426.4 344.8 412.7C396 399 426.4 346.3 412.7 295.1C400.5 249.4 357.2 220.3 311.6 224.3C316.9 233.6 320 244.4 320 256z" /></svg>Show password',this.$textInputPasswordToggle.setAttribute("title","Show password"),this.$textInputPasswordToggle.setAttribute("aria-label","Show password")):(this.$textInputPasswordToggle.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" height="24" aria-hidden="true" focusable="false">\x3c!--!Font Awesome Free v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--\x3e<path d="M73 39.1C63.6 29.7 48.4 29.7 39.1 39.1C29.8 48.5 29.7 63.7 39 73.1L567 601.1C576.4 610.5 591.6 610.5 600.9 601.1C610.2 591.7 610.3 576.5 600.9 567.2L504.5 470.8C507.2 468.4 509.9 466 512.5 463.6C559.3 420.1 590.6 368.2 605.5 332.5C608.8 324.6 608.8 315.8 605.5 307.9C590.6 272.2 559.3 220.2 512.5 176.8C465.4 133.1 400.7 96.2 319.9 96.2C263.1 96.2 214.3 114.4 173.9 140.4L73 39.1zM236.5 202.7C260 185.9 288.9 176 320 176C399.5 176 464 240.5 464 320C464 351.1 454.1 379.9 437.3 403.5L402.6 368.8C415.3 347.4 419.6 321.1 412.7 295.1C399 243.9 346.3 213.5 295.1 227.2C286.5 229.5 278.4 232.9 271.1 237.2L236.4 202.5zM357.3 459.1C345.4 462.3 332.9 464 320 464C240.5 464 176 399.5 176 320C176 307.1 177.7 294.6 180.9 282.7L101.4 203.2C68.8 240 46.4 279 34.5 307.7C31.2 315.6 31.2 324.4 34.5 332.3C49.4 368 80.7 420 127.5 463.4C174.6 507.1 239.3 544 320.1 544C357.4 544 391.3 536.1 421.6 523.4L357.4 459.2z" /></svg>Hide password',this.$textInputPasswordToggle.setAttribute("title","Hide password"),this.$textInputPasswordToggle.setAttribute("aria-label","Hide password"))}}},494(e,t,i){i.d(t,{TextAreaItemisedRows:()=>s});class s{constructor(e,t={}){if(this.$module=e,this.$formFieldInput=this.$module&&this.$module.querySelector(".tna-textarea"),this.$formFieldInputHint=this.$module&&this.$module.querySelector(".tna-form-item__hint"),this.$formFieldBody=this.$module&&this.$module.querySelector(".tna-form-item__body"),!this.$module||!this.$formFieldInput||!this.$formFieldBody||null!==this.$formFieldInput.getAttribute("hidden"))return;const{enhancedHint:i}=t;this.enhancedHint=i||"Enter an item and press enter",this.init()}init(){this.values=this.$formFieldInput.value.split("\n").map(e=>e.trim()).filter(e=>e),this.id=this.$formFieldInput.id,this.$formFieldNewInput=document.createElement("input"),this.$formFieldNewInput.classList.add("tna-text-input"),["id","aria-describedby"].forEach(e=>{this.$formFieldNewInput.setAttribute(e,this.$formFieldInput.getAttribute(e)),this.$formFieldInput.removeAttribute(e)}),this.$formFieldBody.appendChild(this.$formFieldNewInput),this.$formFieldInput.setAttribute("hidden",""),this.$formFieldInput.addEventListener("keyup",()=>this.updateList()),this.$formFieldNewInput.addEventListener("keypress",e=>{"Enter"===e.key&&this.appendValue(e.target.value)}),this.$formFieldNewInputAddButton=document.createElement("button"),this.$formFieldNewInputAddButton.setAttribute("type","button"),this.$formFieldNewInputAddButton.classList.add("tna-button","tna-button--small"),this.$formFieldNewInputAddButtonInner=document.createElement("span"),this.$formFieldNewInputAddButtonInner.innerText="Add",this.$formFieldNewInputAddButtonInnerExtra=document.createElement("span"),this.$formFieldNewInputAddButtonInnerExtra.classList.add("tna-visually-hidden"),this.$formFieldNewInputAddButtonInnerExtra.innerText=" to list",this.$formFieldNewInputAddButtonInner.appendChild(this.$formFieldNewInputAddButtonInnerExtra),this.$formFieldNewInputAddButton.appendChild(this.$formFieldNewInputAddButtonInner),this.$formFieldBody.appendChild(this.$formFieldNewInputAddButton),this.$formFieldNewInputAddButton.addEventListener("click",()=>{this.appendValue(this.$formFieldNewInput.value)}),this.$formFieldLiveAria=document.createElement("div"),this.$formFieldLiveAria.setAttribute("aria-live","assertive"),this.$formFieldLiveAria.classList.add("tna-visually-hidden"),this.$module.appendChild(this.$formFieldLiveAria),this.$formFieldCounter=document.createElement("p"),this.$formFieldCounter.id=`${this.id}-list-helper`,this.$formFieldCounter.classList.add("tna-!--margin-top-xs"),this.$module.appendChild(this.$formFieldCounter),this.$formFieldNewInput.setAttribute("aria-describedby",`${this.$formFieldNewInput.getAttribute("aria-describedby")} ${this.$formFieldCounter.id}`),this.$valuesList=document.createElement("ul"),this.$valuesList.classList.add("tna-compound-filters","tna-!--margin-top-xs"),this.$valuesList.addEventListener("blur",()=>{this.$valuesList.removeAttribute("tabindex"),this.updateAriaText("")}),this.$module.appendChild(this.$valuesList),this.$formFieldInputHint||(this.$formFieldInputHint=document.createElement("p"),this.$formFieldInputHint.classList.add("tna-form-item__hint"),this.$formFieldBody.parentNode.insertBefore(this.$formFieldInputHint,this.$formFieldBody)),this.$formFieldInputHint.innerText=this.enhancedHint,this.updateList()}updateAriaText(e){this.$formFieldLiveAria.innerText=e}normaliseValue(e){return e.replace(/\s{2,}/u," ").trim()}isValueInList(e){return this.values.map(e=>this.normaliseValue(e).toLowerCase()).includes(e.toLowerCase().trim())}appendValue(e){const t=this.normaliseValue(e);t?this.isValueInList(t)?this.updateAriaText(`'${t}' already added`):(this.values.push(t),this.$formFieldInput.value=this.values.join("\n"),this.updateList(),this.updateAriaText(`'${t}' added`)):this.updateAriaText("Enter an item to add"),this.$formFieldNewInput.value="",this.$formFieldNewInput.focus()}removeValue(e){const t=this.normaliseValue(e);t&&this.isValueInList(t)&&(this.values=this.values.filter(e=>e!==t),this.$formFieldInput.value=this.values.join("\n"),this.updateList(),this.updateAriaText(`'${t}' removed`)),this.values.length?(this.$valuesList.setAttribute("tabindex","0"),this.$valuesList.focus()):this.$formFieldNewInput.focus()}updateList(){this.$valuesList.innerHTML="",this.values.map(e=>{const t=document.createElement("li");t.classList.add("tna-compound-filters__item");const i=document.createElement("span");i.innerText=e,t.appendChild(i);const s=document.createElement("button");return s.innerText=`Remove '${e}'`,s.setAttribute("type","button"),s.classList.add("tna-compound-filters__link"),s.addEventListener("click",()=>{this.removeValue(e)}),t.appendChild(s),t}).forEach(e=>this.$valuesList.appendChild(e));let e="item";1!==this.values.length&&(e+="s");const t=`${this.values.length} ${e} added`;this.$formFieldCounter.innerText=t}}},927(e,t,i){var s=i(181);i.d(t,["DJ",0,e=>{const t=e.querySelector("caption");"true"!==e.dataset.tableScrollInitialised&&(t&&!t.id&&(t.id=`table-caption-${(0,s.A)()}`),e.dataset.tableScrollInitialised="true"),e.scrollWidth>e.clientWidth?(e.setAttribute("tabindex","0"),e.setAttribute("role","region"),e.setAttribute("aria-labelledby",t?.id||""),e.classList.add("tna-table-wrapper--scroll")):(e.removeAttribute("tabindex"),e.removeAttribute("role"),e.removeAttribute("aria-labelledby"),e.classList.remove("tna-table-wrapper--scroll"))},"FH",0,e=>{const t=e.getAttribute("datetime");try{const i=(e=>{const t=e;if(!t)throw new Error("No datetime provided");const i=/^\d{4}(?:-\d{2}){2}(?:T| )\d{2}(?::\d{2}){1,2}(?:\.\d+)?(?:Z|(?:[+-]\d{2}:\d{2}))?$/u.test(t),s=/^\d{4}(?:-\d{2}){2}$/u.test(t);if(!i&&!s)throw new Error("Invalid datetime provided");const n=new Date(t);if(!(n instanceof Date)||isNaN(n))throw new Error("Invalid datetime provided");const r=n.toLocaleDateString("en-GB",{weekday:"long"}),a=n.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"});if(i&&(n.getHours()||n.getMinutes())){let e=n.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit"});return n.getSeconds()&&(e=n.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",second:"2-digit"})),`${r} ${a}, ${e}`}return`${r} ${a}`})(t);i.includes(e.textContent)||(e.setAttribute("title",e.textContent),e.textContent=i)}catch(e){}}])},181(e,t,i){i.d(t,["A",0,()=>([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/gu,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))])}};const t={};function i(s){const n=t[s];if(void 0!==n)return n.exports;const r=t[s]={exports:{}};return e[s](r,r.exports,i),r.exports}i.d=(e,t)=>{if(Array.isArray(t))for(var s=0;s<t.length;){var n=t[s++],r=t[s++],a=0===r?{enumerable:!0,value:t[s++]}:{enumerable:!0,get:r};i.o(e,n)||Object.defineProperty(e,n,a)}else for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};let s={};i.r(s),i.d(s,{Accordion:()=>n.Accordion,Breadcrumbs:()=>r.Breadcrumbs,CodeBlock:()=>a.CodeBlock,CookieBanner:()=>o.CookieBanner,DateInputProgressive:()=>l.DateInputProgressive,ErrorSummary:()=>d.ErrorSummary,FileInputDroppable:()=>h.FileInputDroppable,Footer:()=>c.Footer,Gallery:()=>u.Gallery,GlobalHeader:()=>m.GlobalHeader,Header:()=>p.Header,Picture:()=>$.Picture,Sidebar:()=>b.Sidebar,SkipLink:()=>g.SkipLink,Tabs:()=>f.Tabs,TextAreaItemisedRows:()=>y.TextAreaItemisedRows,TextInputPassword:()=>v.TextInputPassword,checkTableForScroll:()=>A.DJ,updateTimeElement:()=>A.FH});var n=i(944),r=i(592),a=i(984),o=i(24),l=i(728),d=i(552),h=i(76),c=i(876),u=i(344),m=i(576),p=i(432),$=i(384),b=i(612),g=i(292),f=i(42),v=i(866),y=i(494),A=i(927);return i.d(s,["initAll",0,(e={})=>{const{scope:t}=e;let i=document;if(t){if(!(t instanceof HTMLElement))throw new Error("Scope must be an HTMLElement");i=t}const s=document.documentElement;s.classList.add("tna-template--js-enabled");const w=()=>{window.removeEventListener("touchstart",w),s.classList.add("tna-template--touched")};window.addEventListener("touchstart",w),window.addEventListener("keydown",e=>{"Tab"===e.key&&(s.classList.add("tna-template--tabbed"),s.classList.remove("tna-template--clicked"))}),window.addEventListener("mousedown",()=>{s.classList.add("tna-template--clicked"),s.classList.remove("tna-template--tabbed")});const L=i.querySelectorAll(".tna-table-wrapper");L.forEach(e=>(0,A.DJ)(e)),window.addEventListener("resize",()=>{L.forEach(e=>(0,A.DJ)(e))}),s.classList.contains("tna-template--enhance-time-elements")&&document.querySelectorAll("time[datetime]").forEach(A.FH),i.querySelectorAll('[data-module="tna-accordion"]').forEach(e=>{new n.Accordion(e)});const I=i.querySelector('[data-module="tna-breadcrumbs"]');I&&new r.Breadcrumbs(I),i.querySelectorAll('[data-module="tna-code-block"]').forEach(e=>{new a.CodeBlock(e)});const x=i.querySelector('[data-module="tna-cookie-banner"]');x&&new o.CookieBanner(x),i.querySelectorAll('[data-module="tna-date-input-progressive"]').forEach(e=>{new l.DateInputProgressive(e)});const S=i.querySelector('[data-module="tna-error-summary"]');S&&new d.ErrorSummary(S).init(),i.querySelectorAll('[data-module="tna-file-input"]').forEach(e=>{new h.FileInputDroppable(e)});const E=i.querySelector('[data-module="tna-footer"]');E&&new c.Footer(E),i.querySelectorAll('[data-module="tna-gallery"]').forEach(e=>{new u.Gallery(e)});const k=i.querySelector('[data-module="tna-global-header"]');k&&new m.GlobalHeader(k);const T=i.querySelector('[data-module="tna-header"]');T&&new p.Header(T),i.querySelectorAll('[data-module="tna-picture"]').forEach(e=>{new $.Picture(e)});const C=i.querySelector('[data-module="tna-sidebar-sections"]');if(C){const{scrollTopThreshold:e,disableHighlightSize:t}=C.dataset;new b.Sidebar(C,{scrollTopThreshold:e,disableHighlightSize:t})}i.querySelectorAll('[data-module="tna-skip-link"]').forEach(e=>{new g.SkipLink(e)}),i.querySelectorAll('[data-module="tna-tabs"]').forEach(e=>{new f.Tabs(e)}),i.querySelectorAll('[data-module="tna-textarea-itemised-rows"]').forEach(e=>{const{enhancedHint:t}=e.dataset;new y.TextAreaItemisedRows(e,{enhancedHint:t})}),i.querySelectorAll('[data-module="tna-text-input-password"]').forEach(e=>{new v.TextInputPassword(e)}),window.matchMedia("print").addEventListener("change",e=>{e.matches?(i.querySelectorAll(".tna-details__details:not([open])").forEach(e=>{e.setAttribute("open",""),e.dataset.wasClosed=""}),i.querySelectorAll(".tna-accordion__content[hidden], .tna-picture__transcript[hidden]").forEach(e=>{e.removeAttribute("hidden"),e.dataset.wasClosed=""})):(i.querySelectorAll(".tna-details__details[data-was-closed]").forEach(e=>{e.removeAttribute("open"),delete e.dataset.wasClosed}),i.querySelectorAll(".tna-accordion__content[data-was-closed], .tna-picture__transcript[data-was-closed]").forEach(e=>{e.setAttribute("hidden",""),e.dataset.wasClosed=""}))})}]),s})());
2
2
  //# sourceMappingURL=all.js.map