@nationalarchives/frontend 0.7.2 → 0.8.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.
- package/nationalarchives/all+analytics.js +1 -1
- package/nationalarchives/all+analytics.js.map +1 -1
- package/nationalarchives/all.css +1 -1
- package/nationalarchives/all.css.map +1 -1
- package/nationalarchives/all.js +1 -1
- package/nationalarchives/all.js.map +1 -1
- package/nationalarchives/all.mjs +1 -1
- package/nationalarchives/components/_presentation.scss +1 -0
- package/nationalarchives/components/accordion/accordion.css +1 -1
- package/nationalarchives/components/accordion/accordion.css.map +1 -1
- package/nationalarchives/components/accordion/accordion.js +1 -1
- package/nationalarchives/components/accordion/accordion.js.map +1 -1
- package/nationalarchives/components/accordion/accordion.mjs +6 -6
- package/nationalarchives/components/accordion/accordion.scss +10 -7
- package/nationalarchives/components/cookie-banner/cookie-banner.js +1 -1
- package/nationalarchives/components/cookie-banner/cookie-banner.js.map +1 -1
- package/nationalarchives/components/cookie-banner/cookie-banner.mjs +3 -3
- package/nationalarchives/components/footer/footer.js +1 -1
- package/nationalarchives/components/footer/footer.js.map +1 -1
- package/nationalarchives/components/footer/footer.mjs +1 -1
- package/nationalarchives/components/gallery/gallery.js +1 -1
- package/nationalarchives/components/gallery/gallery.js.map +1 -1
- package/nationalarchives/components/gallery/gallery.mjs +5 -5
- package/nationalarchives/components/global-header/fixtures.json +35 -22
- package/nationalarchives/components/picture/picture.js +1 -1
- package/nationalarchives/components/picture/picture.js.map +1 -1
- package/nationalarchives/components/picture/picture.mjs +2 -2
- package/nationalarchives/components/secondary-navigation/_index.scss +1 -0
- package/nationalarchives/components/secondary-navigation/fixtures.json +150 -0
- package/nationalarchives/components/secondary-navigation/macro-options.json +70 -0
- package/nationalarchives/components/secondary-navigation/macro.njk +3 -0
- package/nationalarchives/components/secondary-navigation/secondary-navigation.css +1 -0
- package/nationalarchives/components/secondary-navigation/secondary-navigation.css.map +1 -0
- package/nationalarchives/components/secondary-navigation/secondary-navigation.scss +186 -0
- package/nationalarchives/components/secondary-navigation/template.njk +23 -0
- package/nationalarchives/components/tabs/tabs.js +1 -1
- package/nationalarchives/components/tabs/tabs.js.map +1 -1
- package/nationalarchives/components/tabs/tabs.mjs +1 -1
- package/nationalarchives/print.css +1 -1
- package/nationalarchives/print.css.map +1 -1
- package/nationalarchives/print.scss +2 -2
- package/nationalarchives/prototype-kit.css +1 -1
- package/nationalarchives/prototype-kit.css.map +1 -1
- package/nationalarchives/utilities/lists/_index.scss +8 -0
- package/package.json +3 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"all.js","mappings":"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","sources":["webpack://TNAFrontend/webpack/universalModuleDefinition","webpack://TNAFrontend/./src/nationalarchives/components/accordion/accordion.mjs","webpack://TNAFrontend/./src/nationalarchives/components/breadcrumbs/breadcrumbs.mjs","webpack://TNAFrontend/./src/nationalarchives/components/cookie-banner/cookie-banner.mjs","webpack://TNAFrontend/./src/nationalarchives/components/error-summary/error-summary.mjs","webpack://TNAFrontend/./src/nationalarchives/components/footer/footer.mjs","webpack://TNAFrontend/./src/nationalarchives/components/gallery/gallery.mjs","webpack://TNAFrontend/./src/nationalarchives/components/global-header/global-header.mjs","webpack://TNAFrontend/./src/nationalarchives/components/header/header.mjs","webpack://TNAFrontend/./src/nationalarchives/components/picture/picture.mjs","webpack://TNAFrontend/./src/nationalarchives/components/skip-link/skip-link.mjs","webpack://TNAFrontend/./src/nationalarchives/components/tabs/tabs.mjs","webpack://TNAFrontend/./src/nationalarchives/components/text-input/text-input.mjs","webpack://TNAFrontend/./src/nationalarchives/lib/cookies.mjs","webpack://TNAFrontend/./src/nationalarchives/lib/uuid.mjs","webpack://TNAFrontend/webpack/bootstrap","webpack://TNAFrontend/webpack/runtime/define property getters","webpack://TNAFrontend/webpack/runtime/hasOwnProperty shorthand","webpack://TNAFrontend/webpack/runtime/make namespace object","webpack://TNAFrontend/./src/nationalarchives/all.mjs"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"TNAFrontend\"] = factory();\n\telse\n\t\troot[\"TNAFrontend\"] = factory();\n})(self, () => {\nreturn ","export class Accordion {\n polyfillRequired = null;\n\n constructor($module) {\n this.$module = $module;\n this.$items = $module && $module.querySelectorAll(\".tna-accordion__item\");\n if (!this.$module || !this.$items) {\n return;\n }\n\n this.allowMultipleItemsOpen =\n this.$module.dataset[\"multiselectable\"] === \"true\";\n\n this.$items.forEach(($item) => this.initItem($item));\n this.initState();\n }\n\n initItem($item) {\n const $heading = $item.querySelector(\".tna-accordion__heading\");\n const $content = $item.querySelector(\".tna-accordion__body\");\n\n if (!$heading || !$content) {\n return;\n }\n\n $item.classList.add(\"tna-accordion__details\");\n $item.classList.remove(\"tna-accordion__item\");\n\n $heading.removeAttribute(\"class\");\n\n $content.classList.add(\"tna-accordion__content\");\n $content.classList.remove(\"tna-accordion__body\");\n $content.setAttribute(\"hidden\", true);\n\n const $headingButton = document.createElement(\"button\");\n $headingButton.classList.add(\"tna-accordion__summary\");\n $headingButton.setAttribute(\"aria-controls\", $content.id);\n $heading.parentNode.insertBefore($headingButton, $heading.nextSibling);\n $headingButton.appendChild($heading);\n\n $headingButton.addEventListener(\"click\", () => {\n const isOpen = $headingButton.getAttribute(\"aria-expanded\") === \"true\";\n if (isOpen) {\n this.closeItem($item);\n } else {\n this.openItem($item);\n }\n });\n }\n\n initState() {\n this.$items.forEach(($item) => {\n if ($item.dataset[\"isopen\"] === \"true\") {\n this.openItem($item);\n } else {\n this.closeItem($item);\n }\n $item.removeAttribute(\"data-isopen\");\n });\n }\n\n openItem($item) {\n if (!this.allowMultipleItemsOpen) {\n this.closeAllItemsExcept($item);\n }\n const $headingButton = $item.querySelector(\".tna-accordion__summary\");\n const $content = $item.querySelector(\".tna-accordion__content\");\n $headingButton.setAttribute(\"aria-expanded\", \"true\");\n $headingButton.setAttribute(\n \"aria-label\",\n `${$headingButton.innerText.trim()}, Hide this section`,\n );\n $content.removeAttribute(\"hidden\");\n // $content.setAttribute(\"tabindex\", \"0\");\n }\n\n closeItem($item) {\n const $headingButton = $item.querySelector(\".tna-accordion__summary\");\n const $content = $item.querySelector(\".tna-accordion__content\");\n $headingButton.setAttribute(\"aria-expanded\", \"false\");\n $headingButton.setAttribute(\n \"aria-label\",\n `${$headingButton.innerText.trim()}, Show this section`,\n );\n $content.setAttribute(\"hidden\", true);\n // $content.setAttribute(\"tabindex\", \"-1\");\n }\n\n closeAllItemsExcept($excludeItem) {\n Array.from(this.$items)\n .filter(\n ($item) =>\n $item.querySelector(\".tna-accordion__summary\") !== $excludeItem &&\n $item\n .querySelector(\".tna-accordion__summary\")\n .getAttribute(\"aria-expanded\") === \"true\",\n )\n .forEach(($item) => this.closeItem($item));\n }\n}\n","import uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Breadcrumbs {\n constructor($module) {\n this.$module = $module;\n this.$breadcrumbsList =\n $module && $module.querySelector(\".tna-breadcrumbs__list\");\n this.$breadcrumbs =\n $module &&\n this.$breadcrumbsList &&\n $module.querySelectorAll(\".tna-breadcrumbs__item\");\n\n if (!this.$module || !this.$breadcrumbsList || !this.$breadcrumbs) {\n return;\n }\n\n if (\n this.$breadcrumbs.length > 2 &&\n !this.$module.classList.contains(\"tna-breadcrumbs--no-collapse\")\n ) {\n const uniqueId = `tna-breadcrumbs-${uuidv4()}`;\n\n const $expandable = document.createElement(\"li\");\n $expandable.classList.add(\n \"tna-breadcrumbs__item\",\n \"tna-breadcrumbs__item--expandable\",\n );\n $expandable.style.display = \"none\";\n\n const $expandButton = document.createElement(\"button\");\n $expandButton.classList.add(\"tna-breadcrumbs__link\");\n $expandButton.innerHTML =\n \"<span class='tna-!--visually-hidden'>Expand breadcrumbs</span>…\";\n $expandButton.setAttribute(\"type\", \"button\");\n $expandButton.setAttribute(\"aria-expanded\", \"false\");\n $expandButton.setAttribute(\"aria-controls\", uniqueId);\n $expandButton.addEventListener(\"click\", () => {\n this.$module.classList.remove(\"tna-breadcrumbs--collapsed\");\n $expandable.remove();\n this.$module.setAttribute(\"tabindex\", \"0\");\n this.$module.focus();\n this.$module.setAttribute(\"tabindex\", \"-1\");\n });\n\n $expandable.appendChild($expandButton);\n\n this.$breadcrumbsList.setAttribute(\"id\", uniqueId);\n this.$breadcrumbsList.insertBefore(\n $expandable,\n this.$breadcrumbs[this.$breadcrumbs.length - 2].nextSibling,\n );\n\n this.$module.classList.add(\"tna-breadcrumbs--collapsed\");\n }\n }\n}\n","import Cookies from \"../../lib/cookies.mjs\";\n\nexport { Cookies };\n\nexport class CookieBanner {\n constructor($module) {\n this.$module = $module;\n this.$acceptButton = $module && $module.querySelector('[value=\"accept\"]');\n this.$rejectButton = $module && $module.querySelector('[value=\"reject\"]');\n this.$prompt =\n $module && $module.querySelector(\".tna-cookie-banner__message--prompt\");\n this.$acceptedMessage =\n $module && $module.querySelector(\".tna-cookie-banner__message--accepted\");\n this.$rejectedMessage =\n $module && $module.querySelector(\".tna-cookie-banner__message--rejected\");\n this.$closeButtons = $module && $module.querySelectorAll('[value=\"close\"]');\n\n if (\n !this.$module ||\n !this.$acceptButton ||\n !this.$rejectButton ||\n !this.$prompt ||\n !this.$acceptedMessage ||\n !this.$rejectedMessage ||\n !this.$closeButtons\n ) {\n return;\n }\n\n const policies = this.$module.dataset.policies || \"\";\n const extraPolicies = policies\n .split(\",\")\n .filter((x) => x)\n .map((policy) => policy.trim());\n const domain = this.$module.dataset.domain || undefined;\n const path = this.$module.dataset.path || undefined;\n const secure = this.$module.dataset.secure || undefined;\n const policiesKey = this.$module.dataset.policiesKey || undefined;\n\n this.cookies = new Cookies({\n extraPolicies,\n domain,\n path,\n secure,\n policiesKey,\n newInstance: true,\n });\n\n this.cookiePreferencesSet =\n this.$module.dataset.preferencesKey || \"cookie_preferences_set\";\n const cookiePreferencesSet = this.cookies.hasValue(\n this.cookiePreferencesSet,\n \"true\",\n );\n\n if (!cookiePreferencesSet) {\n this.$module.removeAttribute(\"hidden\");\n\n this.$acceptButton.addEventListener(\"click\", () => this.accept());\n this.$rejectButton.addEventListener(\"click\", () => this.reject());\n }\n }\n\n accept() {\n this.$prompt.setAttribute(\"hidden\", true);\n this.complete();\n this.$acceptedMessage.removeAttribute(\"hidden\");\n this.$acceptedMessage.focus();\n this.$acceptedMessage.setAttribute(\"tabindex\", \"-1\");\n this.cookies.acceptAllPolicies();\n }\n\n reject() {\n this.$prompt.setAttribute(\"hidden\", true);\n this.complete();\n this.$rejectedMessage.removeAttribute(\"hidden\");\n this.$rejectedMessage.focus();\n this.$rejectedMessage.setAttribute(\"tabindex\", \"-1\");\n this.cookies.rejectAllPolicies();\n }\n\n complete() {\n this.cookies.set(this.cookiePreferencesSet, true);\n this.$closeButtons.forEach(($closeButton) => {\n $closeButton.addEventListener(\"click\", () => this.close());\n });\n }\n\n close() {\n this.$module.setAttribute(\"hidden\", true);\n }\n}\n","export class ErrorSummary {\n constructor($module) {\n this.$module = $module;\n }\n\n init() {\n if (!this.$module) {\n return;\n }\n\n const disableAutoFocus =\n this.$module.dataset.disableAutofocus === \"true\" || false;\n\n if (!disableAutoFocus) {\n this.setFocus(this.$module);\n }\n }\n\n setFocus($element, options = {}) {\n const isFocusable = $element.getAttribute(\"tabindex\");\n\n if (!isFocusable) {\n $element.setAttribute(\"tabindex\", \"-1\");\n }\n\n /**\n * Handle element focus\n */\n function onFocus() {\n $element.addEventListener(\"blur\", onBlur, { once: true });\n }\n\n /**\n * Handle element blur\n */\n function onBlur() {\n options.onBlur?.call($element);\n\n if (!isFocusable) {\n $element.removeAttribute(\"tabindex\");\n }\n }\n\n // Add listener to reset element on blur, after focus\n $element.addEventListener(\"focus\", onFocus, { once: true });\n\n // Focus element\n options.onBeforeFocus?.call($element);\n $element.focus();\n }\n}\n","import Cookies from \"../../lib/cookies.mjs\";\n\nexport class Footer {\n constructor($module) {\n this.$module = $module;\n this.$themeSelector =\n $module && $module.querySelector(\".tna-footer__theme-selector\");\n this.$tnaTemplate = document.querySelector(\".tna-template\");\n\n if (!this.$module || !this.$themeSelector || !this.$tnaTemplate) {\n return;\n }\n\n this.$themeSelectorButtons = this.$themeSelector.querySelectorAll(\n \"button.tna-footer__theme-selector-button[value]\",\n );\n\n Array.from(this.$themeSelectorButtons).forEach(($themeSelectorButton) => {\n $themeSelectorButton.addEventListener(\"click\", (e) => {\n const $button = e.target;\n this.setTheme($button.value);\n this.selectThemeSelectorButton($button);\n });\n });\n\n this.cookies = new Cookies();\n if (this.cookies.isPolicyAccepted(\"settings\")) {\n this.showThemeSelector();\n }\n this.cookies.on(\"changePolicy\", (data) => {\n if (Object.hasOwn(data, \"settings\")) {\n if (data.settings === true) {\n this.showThemeSelector();\n } else {\n this.cookies.delete(\"theme\");\n this.hideThemeSelector();\n }\n }\n });\n }\n\n showThemeSelector() {\n this.$themeSelector.removeAttribute(\"hidden\");\n if (this.cookies.exists(\"theme\")) {\n const $currentThemeButton = Array.from(this.$themeSelectorButtons).find(\n ($button) => $button.value === this.cookies.get(\"theme\"),\n );\n if ($currentThemeButton) {\n this.selectThemeSelectorButton($currentThemeButton);\n }\n }\n }\n\n hideThemeSelector() {\n this.$themeSelector.setAttribute(\"hidden\", true);\n }\n\n setTheme(theme) {\n if (theme === \"light\") {\n this.$tnaTemplate.classList.remove(\n \"tna-template--system-theme\",\n \"tna-template--dark-theme\",\n );\n } else if (theme === \"dark\") {\n this.$tnaTemplate.classList.remove(\"tna-template--system-theme\");\n this.$tnaTemplate.classList.add(`tna-template--dark-theme`);\n } else if (theme === \"system\") {\n this.$tnaTemplate.classList.remove(\"tna-template--dark-theme\");\n this.$tnaTemplate.classList.add(`tna-template--system-theme`);\n } else {\n return;\n }\n this.cookies.set(\"theme\", theme);\n }\n\n selectThemeSelectorButton($selectedButton) {\n Array.from(this.$themeSelectorButtons).forEach(($button) => {\n if ($button.value === $selectedButton.value) {\n $button.classList.remove(\"tna-button--plain\");\n $button.setAttribute(\"aria-current\", true);\n } else {\n $button.classList.add(\"tna-button--plain\");\n $button.removeAttribute(\"aria-current\");\n }\n });\n }\n}\n","export class Gallery {\n constructor($module) {\n this.$module = $module;\n this.$itemsContainer =\n $module && $module.querySelector(\".tna-gallery__items\");\n this.$items =\n this.$itemsContainer &&\n this.$itemsContainer.querySelectorAll(\".tna-gallery__item\");\n this.$navigation =\n $module && $module.querySelector(\".tna-gallery__navigation\");\n this.$navigationItems =\n this.$navigation &&\n $module.querySelectorAll(\".tna-gallery__navigation-item\");\n this.$options = $module && $module.querySelector(\".tna-gallery__options\");\n this.$navigationButtons =\n $module && $module.querySelector(\".tna-gallery__navigation-buttons\");\n\n if (\n !this.$module ||\n !this.$itemsContainer ||\n !this.$items ||\n !this.$navigation ||\n !this.$navigationItems ||\n !this.$options ||\n !this.$navigationButtons\n ) {\n return;\n }\n\n this.$module.classList.add(\"tna-gallery--interactive\");\n\n this.$showIndex = this.$options.querySelector('button[value=\"show-index\"]');\n this.$enterFullscreen = this.$options.querySelector(\n 'button[value=\"enter-fullscreen\"]',\n );\n this.$exitFullscreen = this.$options.querySelector(\n 'button[value=\"exit-fullscreen\"]',\n );\n\n this.$navigationButtonPrev = this.$navigationButtons.querySelector(\n \".tna-gallery__navigation-prev\",\n );\n this.$navigationButtonNext = this.$navigationButtons.querySelector(\n \".tna-gallery__navigation-next\",\n );\n\n this.$module.addEventListener(\"fullscreenchange\", () =>\n this.syncFullScreen(),\n );\n\n this.setup();\n this.allowGridIndex = this.$module.dataset[\"showgrid\"] || false;\n if (this.allowGridIndex) {\n this.showIndex();\n } else {\n this.currentId = this.$items[0].id;\n this.showItem(this.currentId);\n }\n }\n\n setup() {\n this.$items.forEach(($item) => {\n $item.setAttribute(\"hidden\", true);\n $item.setAttribute(\"aria-hidden\", \"true\");\n });\n this.$navigation.removeAttribute(\"hidden\");\n this.$navigationItems.forEach(($item) => {\n $item.addEventListener(\"click\", () => {\n this.showItem($item.getAttribute(\"aria-controls\"), true);\n this.$itemsContainer.focus();\n });\n });\n this.$module.addEventListener(\"keydown\", (e) => {\n let preventDefaultKeyAction = false;\n switch (e.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n this.showPreviousItem();\n preventDefaultKeyAction = true;\n break;\n case \"ArrowRight\":\n case \"ArrowDown\":\n this.showNextItem();\n preventDefaultKeyAction = true;\n break;\n case \"Home\":\n this.showFirstItem();\n preventDefaultKeyAction = true;\n break;\n case \"End\":\n this.showLastItem();\n preventDefaultKeyAction = true;\n break;\n }\n if (preventDefaultKeyAction) {\n e.stopPropagation();\n e.preventDefault();\n }\n });\n this.$options.removeAttribute(\"hidden\");\n if (\n document.fullscreenEnabled &&\n this.$enterFullscreen &&\n this.$exitFullscreen\n ) {\n this.$enterFullscreen?.addEventListener(\"click\", () =>\n this.enterFullScreen(),\n );\n this.$exitFullscreen?.addEventListener(\"click\", () =>\n this.exitFullScreen(),\n );\n this.$enterFullscreen?.removeAttribute(\"hidden\");\n }\n this.$showIndex?.addEventListener(\"click\", () => this.showIndex());\n this.$navigationButtons?.removeAttribute(\"hidden\");\n this.$navigationButtonPrev?.addEventListener(\"click\", () => {\n this.showPreviousItem();\n });\n this.$navigationButtonNext?.addEventListener(\"click\", () => {\n this.showNextItem();\n });\n\n this.$liveRegion = document.createElement(\"div\");\n this.$liveRegion.setAttribute(\"aria-live\", \"polite\");\n this.$liveRegion.setAttribute(\"aria-atomic\", \"true\");\n this.$liveRegion.setAttribute(\"class\", \"tna-gallery__item-header\");\n this.$itemsContainer.prepend(this.$liveRegion);\n this.$itemsContainer.classList.add(\"tna-gallery__items--hide-item-titles\");\n }\n\n showIndex() {\n this.showItem(\"\");\n this.$itemsContainer.classList.add(\"tna-gallery__items--hide-items\");\n this.$showIndex?.setAttribute(\"hidden\", true);\n }\n\n showItem(id, focus = false) {\n this.$items.forEach(($item) => {\n if (id && $item.id === id) {\n $item.removeAttribute(\"hidden\");\n $item.removeAttribute(\"aria-hidden\");\n if (focus) {\n $item.setAttribute(\"tabindex\", \"0\");\n $item.focus();\n }\n } else {\n $item.setAttribute(\"hidden\", true);\n $item.setAttribute(\"aria-hidden\", \"true\");\n }\n $item.setAttribute(\"tabindex\", \"-1\");\n });\n this.$navigationItems.forEach(($item) => {\n if (id) {\n if ($item.getAttribute(\"aria-controls\") === id) {\n $item.setAttribute(\"aria-current\", \"true\");\n if (this.isFullScreen()) {\n $item.scrollIntoView({ block: \"nearest\" });\n }\n } else {\n $item.setAttribute(\"aria-current\", \"false\");\n }\n } else {\n $item.setAttribute(\"aria-current\", \"false\");\n }\n });\n if (this.allowGridIndex) {\n this.$showIndex?.removeAttribute(\"hidden\");\n }\n this.$itemsContainer.classList.remove(\"tna-gallery__items--hide-items\");\n this.currentId = id;\n this.$liveRegion.textContent = `Image ${this.getCurrentItemIndex() + 1} of ${this.$items.length}`;\n }\n\n getCurrentItemIndex() {\n return Array.from(this.$items).findIndex(\n ($item) => $item.id === this.currentId,\n );\n }\n\n showPreviousItem() {\n let nextIndexToShow = this.getCurrentItemIndex() - 1;\n if (nextIndexToShow < 0) {\n nextIndexToShow = this.$items.length - 1;\n }\n this.showItem(this.$items[nextIndexToShow].id);\n }\n\n showNextItem() {\n let nextIndexToShow = this.getCurrentItemIndex() + 1;\n if (nextIndexToShow >= this.$items.length) {\n nextIndexToShow = 0;\n }\n this.showItem(this.$items[nextIndexToShow].id);\n }\n\n showFirstItem() {\n this.showItem(this.$items[0].id);\n }\n\n showLastItem() {\n this.showItem(this.$items[this.$items.length - 1].id);\n }\n\n isFullScreen() {\n return document.fullscreenElement;\n }\n\n enterFullScreen() {\n this.$module.requestFullscreen();\n this.syncFullScreen();\n this.$module.focus();\n }\n\n exitFullScreen() {\n document.exitFullscreen();\n this.syncFullScreen();\n }\n\n syncFullScreen() {\n if (this.isFullScreen()) {\n this.$enterFullscreen.setAttribute(\"hidden\", true);\n this.$exitFullscreen.removeAttribute(\"hidden\");\n } else {\n this.$exitFullscreen.setAttribute(\"hidden\", true);\n this.$enterFullscreen.removeAttribute(\"hidden\");\n }\n }\n}\n","export class GlobalHeader {\n constructor($module) {\n this.$module = $module;\n this.$toggleButton =\n $module && $module.querySelector(\".tna-global-header__navigation-button\");\n this.$navigation =\n $module &&\n $module.querySelector(\".tna-global-header__navigation-wrapper\");\n this.$topNavigation =\n $module &&\n $module.querySelector(\".tna-global-header__top-navigation-wrapper\");\n this.$links =\n $module &&\n ((this.$navigation &&\n this.$navigation.querySelectorAll(\"[tabindex='0']\")) ||\n (this.$topNavigation &&\n this.$topNavigation.querySelectorAll(\"[tabindex='0']\")));\n this.menuOpened = false;\n this.mql = window.matchMedia(\"(max-width: 48em)\");\n\n if (\n !this.$module ||\n !this.$toggleButton ||\n (!this.$navigation && !this.$topNavigation)\n ) {\n return;\n }\n\n this.$toggleButton.removeAttribute(\"hidden\");\n this.syncState();\n this.$toggleButton.addEventListener(\"click\", () =>\n this.handleToggleNavigation(),\n );\n if (\"addEventListener\" in this.mql) {\n this.mql.addEventListener(\"change\", () => this.syncState());\n } else {\n this.mql.addListener(() => this.syncState());\n }\n\n this.$module.addEventListener(\"keyup\", (e) => {\n if (e.code === \"Escape\" && this.mql.matches) {\n if (this.menuOpened) {\n this.menuOpened = false;\n this.syncState();\n this.$toggleButton.focus();\n }\n }\n });\n }\n\n handleToggleNavigation() {\n this.menuOpened = !this.menuOpened;\n this.syncState();\n }\n\n syncState() {\n if (this.mql.matches) {\n if (this.menuOpened) {\n this.show();\n } else {\n this.hide();\n }\n } else {\n this.show();\n }\n }\n\n hide() {\n if (this.$navigation) {\n this.$navigation.hidden = true;\n this.$navigation.setAttribute(\"aria-hidden\", \"true\");\n }\n if (this.$topNavigation) {\n this.$topNavigation.hidden = true;\n this.$topNavigation.setAttribute(\"aria-hidden\", \"true\");\n }\n this.$toggleButton.setAttribute(\"aria-expanded\", \"false\");\n this.$toggleButton.setAttribute(\"title\", \"Open menu\");\n this.$toggleButton.classList.remove(\n \"tna-global-header__navigation-button--opened\",\n );\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"-1\");\n }\n }\n\n show() {\n if (this.$navigation) {\n this.$navigation.hidden = false;\n this.$navigation.setAttribute(\"aria-hidden\", \"false\");\n }\n if (this.$topNavigation) {\n this.$topNavigation.hidden = false;\n this.$topNavigation.setAttribute(\"aria-hidden\", \"false\");\n }\n this.$toggleButton.setAttribute(\"aria-expanded\", \"true\");\n this.$toggleButton.setAttribute(\"title\", \"Close menu\");\n this.$toggleButton.classList.add(\n \"tna-global-header__navigation-button--opened\",\n );\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\n }\n}\n","export class Header {\n constructor($module) {\n this.$module = $module;\n this.$toggleButton =\n $module && $module.querySelector(\".tna-header__navigation-button\");\n this.$navigation =\n $module && $module.querySelector(\".tna-header__navigation\");\n this.$links =\n $module &&\n this.$navigation &&\n this.$navigation.querySelectorAll(\"[tabindex='0']\");\n this.menuOpened = false;\n this.mql = window.matchMedia(\"(max-width: 48em)\");\n\n if (!this.$module || !this.$toggleButton || !this.$navigation) {\n return;\n }\n\n this.$toggleButton.removeAttribute(\"hidden\");\n this.syncState();\n this.$toggleButton.addEventListener(\"click\", () =>\n this.handleToggleNavigation(),\n );\n if (\"addEventListener\" in this.mql) {\n this.mql.addEventListener(\"change\", () => this.syncState());\n } else {\n this.mql.addListener(() => this.syncState());\n }\n\n this.$module.addEventListener(\"keyup\", (e) => {\n if (e.code === \"Escape\") {\n if (this.menuOpened && this.mql.matches) {\n this.menuOpened = false;\n this.syncState();\n this.$toggleButton.focus();\n }\n }\n });\n }\n\n handleToggleNavigation() {\n this.menuOpened = !this.menuOpened;\n this.syncState();\n }\n\n syncState() {\n if (this.mql.matches) {\n if (this.menuOpened) {\n this.show();\n } else {\n this.hide();\n }\n } else {\n this.show();\n }\n }\n\n show() {\n this.$navigation.classList.add(\"tna-header__navigation--open\");\n this.$navigation.removeAttribute(\"hidden\");\n this.$navigation.setAttribute(\"aria-hidden\", \"false\");\n this.$toggleButton.setAttribute(\"aria-expanded\", \"true\");\n this.$toggleButton.setAttribute(\"title\", \"Close menu\");\n this.$toggleButton.classList.add(\"tna-header__navigation-button--opened\");\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\n }\n\n hide() {\n this.$navigation.classList.remove(\"tna-header__navigation--open\");\n this.$navigation.hidden = true;\n this.$navigation.setAttribute(\"aria-hidden\", \"true\");\n this.$toggleButton.setAttribute(\"aria-expanded\", \"false\");\n this.$toggleButton.setAttribute(\"title\", \"Open menu\");\n this.$toggleButton.classList.remove(\n \"tna-header__navigation-button--opened\",\n );\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"-1\");\n }\n }\n}\n","import uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Picture {\n constructor($module) {\n this.$module = $module;\n this.$imageWrapper =\n $module && $module.querySelector(\".tna-picture__image-wrapper\");\n\n this.$transcriptToggle =\n this.$imageWrapper &&\n this.$imageWrapper.querySelector(\".tna-picture__toggle-transcript\");\n\n this.$transcript =\n $module && $module.querySelector(\".tna-picture__transcript\");\n this.transcriptOpened = false;\n\n if (\n !this.$module ||\n !this.$imageWrapper ||\n !this.$transcriptToggle ||\n !this.$transcript\n ) {\n return;\n }\n\n this.openLabel =\n this.$module.dataset.informationLabelOpen || \"Open transcript\";\n this.closeLabel =\n this.$module.dataset.informationLabelClose || \"Close transcript\";\n\n this.init();\n }\n\n init() {\n const uniqueId = `tna-picture-${uuidv4()}`;\n\n this.$transcriptToggle.removeAttribute(\"hidden\");\n this.$transcriptToggle.setAttribute(\"aria-controls\", uniqueId);\n this.$transcriptToggle.innerText = this.openLabel;\n this.$transcriptToggle.addEventListener(\"click\", () =>\n this.toggleTranscript(),\n );\n\n this.$transcript.setAttribute(\"id\", uniqueId);\n this.$transcript.setAttribute(\"hidden\", true);\n\n this.$transcript.addEventListener(\"keydown\", (e) => {\n switch (e.key) {\n case \"Escape\":\n this.toggleTranscript();\n this.$transcriptToggle.focus();\n break;\n }\n });\n }\n\n toggleTranscript() {\n this.transcriptOpened = !this.transcriptOpened;\n if (this.transcriptOpened) {\n this.$transcriptToggle.setAttribute(\"aria-expanded\", true);\n this.$transcriptToggle.innerText = this.closeLabel;\n this.$transcript.removeAttribute(\"hidden\");\n } else {\n this.$transcriptToggle.setAttribute(\"aria-expanded\", false);\n this.$transcriptToggle.innerText = this.openLabel;\n this.$transcript.setAttribute(\"hidden\", true);\n }\n }\n}\n","export class SkipLink {\n linkedElementListener = false;\n\n constructor($module) {\n this.$module = $module;\n this.linkedElementId = $module.getAttribute(\"href\").split(\"#\").pop();\n this.$linkedElement =\n $module &&\n this.linkedElementId &&\n document.getElementById(this.linkedElementId);\n\n if (!this.$module || !this.$linkedElement) {\n return;\n }\n this.$module.addEventListener(\"click\", () => this.focusLinkedElement());\n }\n\n focusLinkedElement() {\n if (!this.$linkedElement.getAttribute(\"tabindex\")) {\n this.$linkedElement.setAttribute(\"tabindex\", \"-1\");\n this.$linkedElement.classList.add(\"tna-!--no-focus-style\");\n\n if (!this.linkedElementListener) {\n this.$linkedElement.addEventListener(\"blur\", () =>\n this.removeFocusProperties(),\n );\n this.linkedElementListener = true;\n }\n }\n\n this.$linkedElement.focus();\n }\n\n removeFocusProperties() {\n this.$linkedElement.removeAttribute(\"tabindex\");\n this.$linkedElement.classList.remove(\"tna-!--no-focus-style\");\n }\n}\n","export class Tabs {\n constructor($module) {\n this.$module = $module;\n this.$tabList = $module && $module.querySelector(\".tna-tabs__list\");\n this.$tabListItemLinks =\n $module &&\n this.$tabList &&\n this.$tabList.querySelectorAll(\".tna-tabs__button\");\n this.$tabItems = $module && $module.querySelectorAll(\".tna-tabs__item\");\n\n if (\n !this.$module ||\n !this.$tabList ||\n !this.$tabListItemLinks ||\n !this.$tabItems ||\n this.$tabListItemLinks.length !== this.$tabItems.length\n ) {\n return;\n }\n\n this.currentTabIndex = 0;\n this.init();\n }\n\n init() {\n this.$module.classList.add(\"tna-tabs--interactive\");\n this.$tabList.removeAttribute(\"hidden\");\n this.$tabListItemLinks.forEach(($tabListItemLink) => {\n const tabPanelID = $tabListItemLink.getAttribute(\"aria-controls\");\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n const $tabPanel = document.getElementById(tabPanelID);\n $tabPanel.setAttribute(\"aria-labelledby\", $tabListItemLink.id);\n $tabPanel.setAttribute(\"role\", \"tabpanel\");\n $tabListItemLink.addEventListener(\n \"click\",\n (e) => this.handleItemLinkClick(e),\n true,\n );\n });\n this.switchTabByIndex(this.currentTabIndex);\n this.$module.addEventListener(\"keydown\", (e) =>\n this.handleItemLinkKeyDown(e),\n );\n }\n\n handleItemLinkClick(itemLinkClickEvent) {\n itemLinkClickEvent.preventDefault();\n const targetItem =\n itemLinkClickEvent.currentTarget.getAttribute(\"aria-controls\");\n this.switchTabByID(targetItem);\n }\n\n handleItemLinkKeyDown(itemLinkKeyDownEvent) {\n let preventDefaultKeyAction = false;\n switch (itemLinkKeyDownEvent.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n this.previousTab();\n preventDefaultKeyAction = true;\n break;\n case \"ArrowRight\":\n case \"ArrowDown\":\n this.nextTab();\n preventDefaultKeyAction = true;\n break;\n case \"Home\":\n this.switchTabByIndex(0, true);\n preventDefaultKeyAction = true;\n break;\n case \"End\":\n this.switchTabByIndex(this.$tabListItemLinks.length - 1, true);\n preventDefaultKeyAction = true;\n break;\n default:\n break;\n }\n if (preventDefaultKeyAction) {\n itemLinkKeyDownEvent.stopPropagation();\n itemLinkKeyDownEvent.preventDefault();\n }\n }\n\n nextTab() {\n if (this.currentTabIndex < this.$tabListItemLinks.length - 1) {\n this.switchTabByIndex(this.currentTabIndex + 1, true);\n } else {\n this.switchTabByIndex(0, true);\n }\n }\n\n previousTab() {\n if (this.currentTabIndex >= 1) {\n this.switchTabByIndex(this.currentTabIndex - 1, true);\n } else {\n this.switchTabByIndex(this.$tabListItemLinks.length - 1, true);\n }\n }\n\n switchTabByIndex(newIndex, switchFocus = false) {\n this.currentTabIndex = newIndex;\n this.$tabListItemLinks.forEach(($tabListItemLink, index) => {\n if (index === this.currentTabIndex) {\n $tabListItemLink.setAttribute(\"aria-selected\", true);\n $tabListItemLink.setAttribute(\"tabindex\", \"0\");\n if (switchFocus) {\n $tabListItemLink.focus();\n }\n } else {\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n $tabListItemLink.setAttribute(\"tabindex\", \"-1\");\n }\n });\n this.$tabItems.forEach(($tabItem, index) => {\n if (index === this.currentTabIndex) {\n $tabItem.removeAttribute(\"hidden\");\n $tabItem.setAttribute(\"tabindex\", \"0\");\n } else {\n $tabItem.setAttribute(\"hidden\", true);\n $tabItem.setAttribute(\"tabindex\", \"-1\");\n }\n });\n }\n\n switchTabByID(targetId) {\n const index = Array.from(this.$tabItems).findIndex(\n ($tabItem) => $tabItem.getAttribute(\"id\") === targetId,\n );\n this.switchTabByIndex(index);\n }\n}\n","export class TextInput {\n constructor($module) {\n this.$module = $module;\n this.$input = $module && $module.querySelector(\".tna-text-input\");\n\n if (!this.$module || !this.$input) {\n return;\n }\n\n if (this.$input.getAttribute(\"type\") === \"password\") {\n this.$textInputWrapper = document.createElement(\"div\");\n this.$textInputWrapper.classList.add(\"tna-text-input-wrapper\");\n\n this.$textInputPasswordToggle = document.createElement(\"button\");\n this.$textInputPasswordToggle.setAttribute(\"type\", \"button\");\n this.$textInputPasswordToggle.classList.add(\n \"tna-button\",\n \"tna-button--small\",\n \"tna-button--icon-only\",\n );\n this.$textInputPasswordToggle.setAttribute(\n \"aria-controls\",\n this.$input.id,\n );\n this.updateTogglePasswordButtonText();\n\n this.$textInputWrapper.appendChild(this.$input);\n this.$textInputWrapper.appendChild(this.$textInputPasswordToggle);\n this.$module.appendChild(this.$textInputWrapper);\n\n this.$textInputPasswordToggle.addEventListener(\"click\", () => {\n this.togglePasswordType();\n this.$input.focus();\n });\n }\n }\n\n togglePasswordType() {\n if (this.$input.getAttribute(\"type\") === \"password\") {\n this.$input.setAttribute(\"type\", \"text\");\n } else {\n this.$input.setAttribute(\"type\", \"password\");\n }\n this.updateTogglePasswordButtonText();\n }\n\n updateTogglePasswordButtonText() {\n if (this.$input.getAttribute(\"type\") === \"password\") {\n this.$textInputPasswordToggle.innerHTML = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\" height=\"16\" aria-hidden=\"true\" focusable=\"false\"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d=\"M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z\"/></svg>Show password`;\n this.$textInputPasswordToggle.setAttribute(\"title\", \"Show password\");\n this.$textInputPasswordToggle.setAttribute(\"aria-title\", \"Show password\");\n } else {\n this.$textInputPasswordToggle.innerHTML = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 512\" height=\"16\" aria-hidden=\"true\" focusable=\"false\"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d=\"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zM223.1 149.5C248.6 126.2 282.7 112 320 112c79.5 0 144 64.5 144 144c0 24.9-6.3 48.3-17.4 68.7L408 294.5c8.4-19.3 10.6-41.4 4.8-63.3c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3c0 10.2-2.4 19.8-6.6 28.3l-90.3-70.8zM373 389.9c-16.4 6.5-34.3 10.1-53 10.1c-79.5 0-144-64.5-144-144c0-6.9 .5-13.6 1.4-20.2L83.1 161.5C60.3 191.2 44 220.8 34.5 243.7c-3.3 7.9-3.3 16.7 0 24.6c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c47.8 0 89.9-12.9 126.2-32.5L373 389.9z\"/></svg></i>Hide password`;\n this.$textInputPasswordToggle.setAttribute(\"title\", \"Hide password\");\n this.$textInputPasswordToggle.setAttribute(\"aria-title\", \"Hide password\");\n }\n }\n}\n","window.TNAFrontendCookies = window.TNAFrontendCookies || null;\nwindow.TNAFrontendCookieEvents = window.TNAFrontendCookieEvents || null;\n\nexport class CookieEventHandler {\n events = {};\n oneTimeEvents = {};\n\n constructor() {\n if (window.TNAFrontendCookieEvents) {\n return window.TNAFrontendCookieEvents;\n }\n window.TNAFrontendCookieEvents = this;\n }\n\n /**\n * Add an event listener.\n * @param {String} event - The event to add a listener for.\n * @param {Function} callback - The callback function to call when the event is triggered.\n */\n on(event, callback) {\n if (!Object.hasOwn(this.events, event)) {\n this.events[event] = [];\n }\n this.events[event] = [...this.events[event], callback];\n }\n\n once(event, callback) {\n if (!Object.hasOwn(this.oneTimeEvents, event)) {\n this.oneTimeEvents[event] = [];\n }\n this.oneTimeEvents[event] = [...this.oneTimeEvents[event], callback];\n }\n\n /** @protected */\n trigger(event, data = {}) {\n if (Object.hasOwn(this.events, event)) {\n this.events[event].forEach((eventToTrigger) =>\n eventToTrigger.call(this, data),\n );\n }\n if (Object.hasOwn(this.oneTimeEvents, event)) {\n for (let i = this.oneTimeEvents[event].length - 1; i >= 0; i--) {\n const eventToTrigger = this.oneTimeEvents[event][i];\n eventToTrigger.call(this, data);\n this.oneTimeEvents[event].splice(i, 1);\n }\n }\n }\n}\n\n/**\n * Class to handle cookies.\n * @class Cookies\n * @constructor\n * @public\n */\nexport default class Cookies {\n /** @protected */\n extraPolicies = [];\n /** @protected */\n domain = \"\";\n /** @protected */\n path = \"\";\n /** @protected */\n secure = true;\n /** @protected */\n policiesKey = \"\";\n /** @protected */\n events = null;\n /** @protected */\n defaultAge = null;\n\n /**\n * Create a cookie handler.\n * @param {String} [options.extraPolicies=[]] - The extra cookie policies to manage in addition to essential, settings, usage and marketing.\n * @param {String} [options.domain=\"\"] - The domain to register the cookie with.\n * @param {String} [options.path=\"\"] - The domain to register the cookie with.\n * @param {String} [options.secure=true] - Only set cookie in HTTPS environments.\n * @param {String} [options.policiesKey=\"cookies_policy\"] - The name of the cookie.\n * @param {String} [options.newInstance=false] - Create a fresh instance of the cookie class.\n * @param {String} [options.defaultAge=31536000] - The default age of non-session cookies.\n */\n constructor(options = {}) {\n const {\n extraPolicies = [],\n domain = null,\n path = null,\n secure = true,\n policiesKey = \"cookies_policy\",\n newInstance = false,\n defaultAge = 31536000, // 365 days\n } = options;\n if (newInstance) {\n this.destroyInstance();\n } else if (window.TNAFrontendCookies) {\n return window.TNAFrontendCookies;\n }\n this.extraPolicies = extraPolicies;\n if (domain === null) {\n this.domain = document.documentElement.dataset.tnaCookiesDomain || \"\";\n } else {\n this.domain = domain;\n }\n if (path === null) {\n this.path = document.documentElement.dataset.tnaCookiesPath || \"/\";\n } else {\n this.path = path;\n }\n this.secure = secure;\n this.policiesKey = policiesKey;\n this.defaultAge = defaultAge;\n this.events = new CookieEventHandler();\n this.init();\n window.TNAFrontendCookies = this;\n }\n\n /** @protected */\n init() {\n this.savePolicies({\n ...Object.fromEntries(\n this.extraPolicies.map((k) => [k.toLowerCase(), false]),\n ),\n usage: false,\n settings: false,\n marketing: false,\n ...this.policies,\n essential: true,\n });\n }\n\n destroyInstance() {\n window.TNAFrontendCookies = null;\n }\n\n /** @protected */\n get all() {\n const deserialised = {};\n document.cookie\n .split(\"; \")\n .filter((x) => x)\n .forEach((cookie) => {\n const parts = cookie.trim().split(\"=\");\n if (parts[0]) {\n deserialised[parts[0]] = parts[1];\n }\n });\n return deserialised;\n }\n\n /** @protected */\n get policies() {\n try {\n return JSON.parse(this.get(this.policiesKey) || \"{}\");\n } catch (e) {\n return {};\n }\n }\n\n /**\n * Check to see whether a cookie exists or not.\n * @param {String} key - The cookie name.\n * @returns {Boolean}\n */\n exists(key) {\n return Object.hasOwn(this.all, key);\n }\n\n /**\n * Check to see whether a cookie has a particular value.\n * @param {String} key - The cookie name.\n * @param {String|Number|Boolean} value - The value to check against.\n * @returns\n */\n hasValue(key, value) {\n return this.get(key) == value;\n }\n\n /**\n * Get a cookie.\n * @param {String} key - The cookie name.\n * @returns {String|Number|Boolean}\n */\n get(key) {\n return this.exists(key) ? decodeURIComponent(this.all[key]) : null;\n }\n\n /**\n * Set a cookie.\n * @param {String} key - The cookie name.\n * @param {String|Number|Boolean} value - The cookie value.\n * @param {Object} options\n * @param {Number} [options.maxAge=this.defaultAge] - The maximum age of the cookie in seconds.\n * @param {String} [options.path=/] - The path to register the cookie for.\n * @param {String} [options.sameSite=Lax] - The sameSite attribute.\n * @param {String} [options.domain=this.domain] - The domain to register the cookie with.\n * @param {String} [options.path=this.path] - The path to register the cookie with.\n * @param {String} [options.secure=this.secure] - Only set cookie in HTTPS environments.\n * @param {String} [options.session=false] - Set a session cookie.\n */\n set(key, value, options = {}) {\n const {\n maxAge = this.defaultAge,\n sameSite = \"Lax\",\n domain = this.domain,\n path = this.path,\n secure = this.secure,\n session = false,\n } = options;\n if (!key) {\n return;\n }\n const cookie = `${encodeURIComponent(key)}=${encodeURIComponent(value)};${\n domain ? ` domain=${domain}; ` : \"\"\n } samesite=${sameSite}; path=${path}${!session ? `; max-age=${maxAge}` : \"\"}${\n secure ? \"; secure\" : \"\"\n }`;\n document.cookie = cookie;\n this.events.trigger(\"setCookie\", {\n key,\n value,\n maxAge,\n path,\n sameSite,\n domain,\n secure,\n session,\n cookie,\n });\n }\n\n /**\n * Delete a cookie.\n * @param {String} key - The cookie name.\n * @param {String} [path=/] - The path to the cookie is registered on.\n */\n delete(key, path = \"/\", domain = null) {\n const options = { maxAge: -1, path, domain: domain || undefined };\n this.set(key, \"\", options);\n this.events.trigger(\"deleteCookie\", { key, ...options });\n }\n\n /**\n * Delete all cookies.\n */\n deleteAll(path = \"/\", domain = null) {\n Object.keys(this.all).forEach((cookie) => {\n this.delete(cookie, path, domain);\n });\n this.events.trigger(\"deleteAllCookies\", { path, domain });\n }\n\n /**\n * Accept a policy.\n * @param {String} policy - The name of the policy.\n */\n acceptPolicy(policy) {\n this.setPolicy(policy, true);\n this.events.trigger(\"acceptPolicy\", policy);\n this.events.trigger(\"changePolicy\", { [policy]: true });\n }\n\n /**\n * Reject a policy.\n * @param {String} policy - The name of the policy.\n */\n rejectPolicy(policy) {\n this.setPolicy(policy, false);\n this.events.trigger(\"rejectPolicy\", policy);\n this.events.trigger(\"changePolicy\", { [policy]: false });\n }\n\n /**\n * Set a policy.\n * @param {String} policy - The name of the policy.\n * @param {Boolean} accepted - Whether the policy is accepted or not.\n */\n setPolicy(policy, accepted) {\n if (policy === \"essential\") {\n return;\n }\n this.savePolicies({\n ...this.policies,\n [policy]: accepted,\n essential: true,\n });\n this.events.trigger(\"changePolicy\", { [policy]: accepted });\n }\n\n /**\n * Accept all the cookie policies.\n */\n acceptAllPolicies() {\n const allPolicies = Object.fromEntries(\n Object.keys(this.policies).map((k) => [k.toLowerCase(), true]),\n );\n this.savePolicies(allPolicies);\n this.events.trigger(\"acceptAllPolicies\");\n this.events.trigger(\"changePolicy\", allPolicies);\n }\n\n /**\n * Reject all the cookie policies.\n */\n rejectAllPolicies() {\n const allPolicies = {\n ...Object.fromEntries(\n Object.keys(this.policies).map((k) => [k.toLowerCase(), false]),\n ),\n essential: true,\n };\n this.savePolicies(allPolicies);\n this.events.trigger(\"rejectAllPolicies\");\n this.events.trigger(\"changePolicy\", allPolicies);\n }\n\n /**\n * Commit policy preferences to the browser.\n * @param {object} policies - The policies to commit.\n */\n savePolicies(policies) {\n this.set(this.policiesKey, JSON.stringify(policies), {\n maxAge: 60 * 60 * 24 * 365,\n });\n }\n\n /**\n * Get the acceptance status of a policy.\n * @param {String} policy - The name of the policy.\n * @returns {Boolean}\n */\n isPolicyAccepted(policy) {\n return Object.hasOwn(this.policies, policy)\n ? this.policies[policy] === true\n : null;\n }\n\n /**\n * Add an event listener.\n * @param {String} event - The event to add a listener for.\n * @param {Function} callback - The callback function to call when the event is triggered.\n */\n on(event, callback) {\n this.events.on(event, callback);\n }\n\n /**\n * Add a one-time event listener.\n * @param {String} event - The event to add a listener for.\n * @param {Function} callback - The callback function to call when the event is triggered.\n */\n once(event, callback) {\n this.events.once(event, callback);\n }\n}\n","const uuidv4 = () =>\n ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c) =>\n (\n c ^\n (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))\n ).toString(16),\n );\n\nexport default uuidv4;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { Accordion } from \"./components/accordion/accordion.mjs\";\nimport { Breadcrumbs } from \"./components/breadcrumbs/breadcrumbs.mjs\";\nimport { CookieBanner } from \"./components/cookie-banner/cookie-banner.mjs\";\nimport { ErrorSummary } from \"./components/error-summary/error-summary.mjs\";\nimport { Footer } from \"./components/footer/footer.mjs\";\nimport { Gallery } from \"./components/gallery/gallery.mjs\";\nimport { GlobalHeader } from \"./components/global-header/global-header.mjs\";\nimport { Header } from \"./components/header/header.mjs\";\nimport { Picture } from \"./components/picture/picture.mjs\";\nimport { SkipLink } from \"./components/skip-link/skip-link.mjs\";\nimport { Tabs } from \"./components/tabs/tabs.mjs\";\nimport { TextInput } from \"./components/text-input/text-input.mjs\";\nimport Cookies from \"./lib/cookies.mjs\";\n\nconst initAll = (options) => {\n options = typeof options !== \"undefined\" ? options : {};\n const $scope =\n options.scope instanceof HTMLElement ? options.scope : document;\n\n const $body = document.documentElement;\n $body.classList.add(\"tna-template--js-enabled\");\n\n const onFirstTouch = () => {\n window.removeEventListener(\"touchstart\", onFirstTouch);\n $body.classList.add(\"tna-template--touched\");\n };\n\n const onKeyDown = (e) => {\n if (e.key === \"Tab\") {\n $body.classList.add(\"tna-template--tabbed\");\n $body.classList.remove(\"tna-template--clicked\");\n }\n };\n\n const onMouseDown = () => {\n $body.classList.add(\"tna-template--clicked\");\n $body.classList.remove(\"tna-template--tabbed\");\n };\n\n window.addEventListener(\"touchstart\", onFirstTouch);\n window.addEventListener(\"keydown\", onKeyDown);\n window.addEventListener(\"mousedown\", onMouseDown);\n\n const $accordions = $scope.querySelectorAll('[data-module=\"tna-accordion\"]');\n $accordions.forEach(($accordion) => {\n new Accordion($accordion);\n });\n\n const $breadcrumbs = $scope.querySelector('[data-module=\"tna-breadcrumbs\"]');\n if ($breadcrumbs) {\n new Breadcrumbs($breadcrumbs);\n }\n\n const $cookieBanner = $scope.querySelector(\n '[data-module=\"tna-cookie-banner\"]',\n );\n if ($cookieBanner) {\n new CookieBanner($cookieBanner);\n }\n\n const $errorSummary = $scope.querySelector(\n '[data-module=\"tna-error-summary\"]',\n );\n if ($errorSummary) {\n new ErrorSummary($errorSummary).init();\n }\n\n const $footer = $scope.querySelector('[data-module=\"tna-footer\"]');\n if ($footer) {\n new Footer($footer);\n }\n\n const $galleries = $scope.querySelectorAll('[data-module=\"tna-gallery\"]');\n $galleries.forEach(($gallery) => {\n new Gallery($gallery);\n });\n\n const $globalHeader = $scope.querySelector(\n '[data-module=\"tna-global-header\"]',\n );\n if ($globalHeader) {\n new GlobalHeader($globalHeader);\n }\n\n const $header = $scope.querySelector('[data-module=\"tna-header\"]');\n if ($header) {\n new Header($header);\n }\n\n const $pictures = $scope.querySelectorAll('[data-module=\"tna-picture\"]');\n $pictures.forEach(($picture) => {\n new Picture($picture);\n });\n\n const $skipLinks = $scope.querySelectorAll('[data-module=\"tna-skip-link\"]');\n $skipLinks.forEach(($skipLink) => {\n new SkipLink($skipLink);\n });\n\n const $tabs = $scope.querySelectorAll('[data-module=\"tna-tabs\"]');\n $tabs.forEach(($tabModule) => {\n new Tabs($tabModule);\n });\n\n const $textInputs = $scope.querySelectorAll('[data-module=\"tna-text-input\"]');\n $textInputs.forEach(($textInput) => {\n new TextInput($textInput);\n });\n\n const checkTableForScroll = ($tableWrapper) => {\n const scrollable = $tableWrapper.scrollWidth > $tableWrapper.clientWidth;\n const $tableCaption = $tableWrapper.querySelector(\".tna-table__caption\");\n if (scrollable) {\n $tableWrapper.setAttribute(\"tabindex\", \"0\");\n $tableCaption?.classList.add(\"tna-table__caption--scroll\");\n } else {\n $tableWrapper.removeAttribute(\"tabindex\");\n $tableCaption?.classList.remove(\"tna-table__caption--scroll\");\n }\n };\n\n const $tableWrappers = document.querySelectorAll(\n \".tna-table-wrapper:has(.tna-table__caption)\",\n );\n $tableWrappers.forEach(($tableWrapper) => checkTableForScroll($tableWrapper));\n window.addEventListener(\"resize\", () => {\n $tableWrappers.forEach(($tableWrapper) =>\n checkTableForScroll($tableWrapper),\n );\n });\n\n window.matchMedia(\"print\").addEventListener(\"change\", (evt) => {\n if (evt.matches) {\n document\n .querySelectorAll(\".tna-details__details:not([open])\")\n .forEach((e) => {\n e.setAttribute(\"open\", \"\");\n e.dataset.wasClosed = \"\";\n });\n document\n .querySelectorAll(\n \".tna-accordion__content[hidden], .tna-picture__transcript[hidden]\",\n )\n .forEach((e) => {\n e.removeAttribute(\"hidden\");\n e.dataset.wasClosed = \"\";\n });\n } else {\n document\n .querySelectorAll(\".tna-details__details[data-was-closed]\")\n .forEach((e) => {\n e.removeAttribute(\"open\");\n delete e.dataset.wasClosed;\n });\n document\n .querySelectorAll(\n \".tna-accordion__content[data-was-closed], .tna-picture__transcript[data-was-closed]\",\n )\n .forEach((e) => {\n e.setAttribute(\"hidden\", true);\n e.dataset.wasClosed = \"\";\n });\n }\n });\n};\n\nexport {\n initAll,\n Cookies,\n Accordion,\n Breadcrumbs,\n CookieBanner,\n ErrorSummary,\n Footer,\n Gallery,\n GlobalHeader,\n Header,\n Picture,\n SkipLink,\n Tabs,\n TextInput,\n};\n"],"names":["root","factory","exports","module","define","amd","self","Accordion","$module","_this","_classCallCheck","this","$items","querySelectorAll","allowMultipleItemsOpen","dataset","forEach","$item","initItem","initState","key","value","_this2","$heading","querySelector","$content","classList","add","remove","removeAttribute","setAttribute","$headingButton","document","createElement","id","parentNode","insertBefore","nextSibling","appendChild","addEventListener","getAttribute","closeItem","openItem","_this3","closeAllItemsExcept","concat","innerText","trim","$excludeItem","_this4","Array","from","filter","Breadcrumbs","_createClass","$breadcrumbsList","$breadcrumbs","length","contains","uniqueId","uuidv4","$expandable","style","display","$expandButton","innerHTML","focus","CookieBanner","$acceptButton","$rejectButton","$prompt","$acceptedMessage","$rejectedMessage","$closeButtons","extraPolicies","policies","split","x","map","policy","domain","undefined","path","secure","policiesKey","cookies","Cookies","newInstance","cookiePreferencesSet","preferencesKey","hasValue","accept","reject","complete","acceptAllPolicies","rejectAllPolicies","set","$closeButton","close","ErrorSummary","disableAutofocus","setFocus","$element","_options$onBeforeFocu","options","arguments","isFocusable","onBlur","_options$onBlur","call","once","onBeforeFocus","Footer","$themeSelector","$tnaTemplate","$themeSelectorButtons","$themeSelectorButton","e","$button","target","setTheme","selectThemeSelectorButton","isPolicyAccepted","showThemeSelector","on","data","Object","hasOwn","settings","hideThemeSelector","exists","$currentThemeButton","find","get","theme","$selectedButton","Gallery","$itemsContainer","$navigation","$navigationItems","$options","$navigationButtons","$showIndex","$enterFullscreen","$exitFullscreen","$navigationButtonPrev","$navigationButtonNext","syncFullScreen","setup","allowGridIndex","showIndex","currentId","showItem","_this$$showIndex","_this$$navigationButt","_this$$navigationButt2","_this$$navigationButt3","_this$$enterFullscree","_this$$exitFullscreen","_this$$enterFullscree2","preventDefaultKeyAction","showPreviousItem","showNextItem","showFirstItem","showLastItem","stopPropagation","preventDefault","fullscreenEnabled","enterFullScreen","exitFullScreen","$liveRegion","prepend","_this$$showIndex2","_this$$showIndex3","isFullScreen","scrollIntoView","block","textContent","getCurrentItemIndex","findIndex","nextIndexToShow","fullscreenElement","requestFullscreen","exitFullscreen","GlobalHeader","$toggleButton","$topNavigation","$links","menuOpened","mql","window","matchMedia","syncState","handleToggleNavigation","addListener","code","matches","show","hide","hidden","i","Header","Picture","$imageWrapper","$transcriptToggle","$transcript","transcriptOpened","openLabel","informationLabelOpen","closeLabel","informationLabelClose","init","toggleTranscript","SkipLink","linkedElementId","pop","$linkedElement","getElementById","focusLinkedElement","linkedElementListener","removeFocusProperties","Tabs","$tabList","$tabListItemLinks","$tabItems","currentTabIndex","$tabListItemLink","tabPanelID","$tabPanel","handleItemLinkClick","switchTabByIndex","handleItemLinkKeyDown","itemLinkClickEvent","targetItem","currentTarget","switchTabByID","itemLinkKeyDownEvent","previousTab","nextTab","newIndex","switchFocus","index","$tabItem","targetId","TextInput","$input","$textInputWrapper","$textInputPasswordToggle","updateTogglePasswordButtonText","togglePasswordType","TNAFrontendCookies","TNAFrontendCookieEvents","CookieEventHandler","_defineProperty","event","callback","events","_toConsumableArray","oneTimeEvents","eventToTrigger","splice","_options$extraPolicie","_options$domain","_options$path","_options$secure","_options$policiesKey","_options$newInstance","_options$defaultAge","defaultAge","destroyInstance","documentElement","tnaCookiesDomain","tnaCookiesPath","savePolicies","_objectSpread","fromEntries","k","toLowerCase","usage","marketing","essential","deserialised","cookie","parts","JSON","parse","all","decodeURIComponent","_options$maxAge","maxAge","_options$sameSite","sameSite","_options$domain2","_options$path2","_options$secure2","_options$session","session","encodeURIComponent","trigger","keys","setPolicy","accepted","allPolicies","stringify","replace","c","crypto","getRandomValues","Uint8Array","toString","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","o","defineProperty","enumerable","obj","prop","prototype","hasOwnProperty","r","Symbol","toStringTag","initAll","$scope","scope","HTMLElement","$body","onFirstTouch","removeEventListener","$accordion","$cookieBanner","$errorSummary","$footer","$gallery","$globalHeader","$header","$picture","$skipLink","$tabModule","$textInput","checkTableForScroll","$tableWrapper","scrollable","scrollWidth","clientWidth","$tableCaption","$tableWrappers","evt","wasClosed"],"sourceRoot":""}
|
1
|
+
{"version":3,"file":"all.js","mappings":"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","sources":["webpack://TNAFrontend/webpack/universalModuleDefinition","webpack://TNAFrontend/./src/nationalarchives/components/accordion/accordion.mjs","webpack://TNAFrontend/./src/nationalarchives/components/breadcrumbs/breadcrumbs.mjs","webpack://TNAFrontend/./src/nationalarchives/components/cookie-banner/cookie-banner.mjs","webpack://TNAFrontend/./src/nationalarchives/components/error-summary/error-summary.mjs","webpack://TNAFrontend/./src/nationalarchives/components/footer/footer.mjs","webpack://TNAFrontend/./src/nationalarchives/components/gallery/gallery.mjs","webpack://TNAFrontend/./src/nationalarchives/components/global-header/global-header.mjs","webpack://TNAFrontend/./src/nationalarchives/components/header/header.mjs","webpack://TNAFrontend/./src/nationalarchives/components/picture/picture.mjs","webpack://TNAFrontend/./src/nationalarchives/components/skip-link/skip-link.mjs","webpack://TNAFrontend/./src/nationalarchives/components/tabs/tabs.mjs","webpack://TNAFrontend/./src/nationalarchives/components/text-input/text-input.mjs","webpack://TNAFrontend/./src/nationalarchives/lib/cookies.mjs","webpack://TNAFrontend/./src/nationalarchives/lib/uuid.mjs","webpack://TNAFrontend/webpack/bootstrap","webpack://TNAFrontend/webpack/runtime/define property getters","webpack://TNAFrontend/webpack/runtime/hasOwnProperty shorthand","webpack://TNAFrontend/webpack/runtime/make namespace object","webpack://TNAFrontend/./src/nationalarchives/all.mjs"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"TNAFrontend\"] = factory();\n\telse\n\t\troot[\"TNAFrontend\"] = factory();\n})(self, () => {\nreturn ","export class Accordion {\n constructor($module) {\n this.$module = $module;\n this.$items = $module && $module.querySelectorAll(\".tna-accordion__item\");\n if (!this.$module || !this.$items) {\n return;\n }\n\n this.allowMultipleItemsOpen =\n this.$module.dataset[\"multiselectable\"] === \"true\";\n\n this.$items.forEach(($item) => this.initItem($item));\n this.initState();\n }\n\n initItem($item) {\n const $heading = $item.querySelector(\".tna-accordion__heading\");\n const $content = $item.querySelector(\".tna-accordion__body\");\n\n if (!$heading || !$content) {\n return;\n }\n\n $item.classList.add(\"tna-accordion__details\");\n $item.classList.remove(\"tna-accordion__item\");\n\n $heading.removeAttribute(\"class\");\n\n $content.classList.add(\"tna-accordion__content\");\n $content.classList.remove(\"tna-accordion__body\");\n $content.setAttribute(\"hidden\", \"\");\n\n const $headingButton = document.createElement(\"button\");\n $headingButton.classList.add(\"tna-accordion__summary\");\n $headingButton.setAttribute(\"type\", \"button\");\n $headingButton.setAttribute(\"aria-controls\", $content.id);\n $headingButton.innerText = $heading.innerText;\n $heading.innerText = \"\";\n $heading.appendChild($headingButton);\n\n $headingButton.addEventListener(\"click\", () => {\n const isOpen = $headingButton.getAttribute(\"aria-expanded\") === \"true\";\n if (isOpen) {\n this.closeItem($item);\n } else {\n this.openItem($item);\n }\n });\n }\n\n initState() {\n this.$items.forEach(($item) => {\n if ($item.dataset[\"isopen\"] === \"true\") {\n this.openItem($item);\n } else {\n this.closeItem($item);\n }\n $item.removeAttribute(\"data-isopen\");\n });\n }\n\n openItem($item) {\n if (!this.allowMultipleItemsOpen) {\n this.closeAllItemsExcept($item);\n }\n const $headingButton = $item.querySelector(\".tna-accordion__summary\");\n const $content = $item.querySelector(\".tna-accordion__content\");\n $headingButton.setAttribute(\"aria-expanded\", \"true\");\n $headingButton.setAttribute(\n \"aria-label\",\n `${$headingButton.innerText.trim()}, Hide this section`,\n );\n $content.removeAttribute(\"hidden\");\n // $content.setAttribute(\"tabindex\", \"0\");\n }\n\n closeItem($item) {\n const $headingButton = $item.querySelector(\".tna-accordion__summary\");\n const $content = $item.querySelector(\".tna-accordion__content\");\n $headingButton.setAttribute(\"aria-expanded\", \"false\");\n $headingButton.setAttribute(\n \"aria-label\",\n `${$headingButton.innerText.trim()}, Show this section`,\n );\n $content.setAttribute(\"hidden\", \"\");\n // $content.setAttribute(\"tabindex\", \"-1\");\n }\n\n closeAllItemsExcept($excludeItem) {\n Array.from(this.$items)\n .filter(\n ($item) =>\n $item.querySelector(\".tna-accordion__summary\") !== $excludeItem &&\n $item\n .querySelector(\".tna-accordion__summary\")\n .getAttribute(\"aria-expanded\") === \"true\",\n )\n .forEach(($item) => this.closeItem($item));\n }\n}\n","import uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Breadcrumbs {\n constructor($module) {\n this.$module = $module;\n this.$breadcrumbsList =\n $module && $module.querySelector(\".tna-breadcrumbs__list\");\n this.$breadcrumbs =\n $module &&\n this.$breadcrumbsList &&\n $module.querySelectorAll(\".tna-breadcrumbs__item\");\n\n if (!this.$module || !this.$breadcrumbsList || !this.$breadcrumbs) {\n return;\n }\n\n if (\n this.$breadcrumbs.length > 2 &&\n !this.$module.classList.contains(\"tna-breadcrumbs--no-collapse\")\n ) {\n const uniqueId = `tna-breadcrumbs-${uuidv4()}`;\n\n const $expandable = document.createElement(\"li\");\n $expandable.classList.add(\n \"tna-breadcrumbs__item\",\n \"tna-breadcrumbs__item--expandable\",\n );\n $expandable.style.display = \"none\";\n\n const $expandButton = document.createElement(\"button\");\n $expandButton.classList.add(\"tna-breadcrumbs__link\");\n $expandButton.innerHTML =\n \"<span class='tna-!--visually-hidden'>Expand breadcrumbs</span>…\";\n $expandButton.setAttribute(\"type\", \"button\");\n $expandButton.setAttribute(\"aria-expanded\", \"false\");\n $expandButton.setAttribute(\"aria-controls\", uniqueId);\n $expandButton.addEventListener(\"click\", () => {\n this.$module.classList.remove(\"tna-breadcrumbs--collapsed\");\n $expandable.remove();\n this.$module.setAttribute(\"tabindex\", \"0\");\n this.$module.focus();\n this.$module.setAttribute(\"tabindex\", \"-1\");\n });\n\n $expandable.appendChild($expandButton);\n\n this.$breadcrumbsList.setAttribute(\"id\", uniqueId);\n this.$breadcrumbsList.insertBefore(\n $expandable,\n this.$breadcrumbs[this.$breadcrumbs.length - 2].nextSibling,\n );\n\n this.$module.classList.add(\"tna-breadcrumbs--collapsed\");\n }\n }\n}\n","import Cookies from \"../../lib/cookies.mjs\";\n\nexport { Cookies };\n\nexport class CookieBanner {\n constructor($module) {\n this.$module = $module;\n this.$acceptButton = $module && $module.querySelector('[value=\"accept\"]');\n this.$rejectButton = $module && $module.querySelector('[value=\"reject\"]');\n this.$prompt =\n $module && $module.querySelector(\".tna-cookie-banner__message--prompt\");\n this.$acceptedMessage =\n $module && $module.querySelector(\".tna-cookie-banner__message--accepted\");\n this.$rejectedMessage =\n $module && $module.querySelector(\".tna-cookie-banner__message--rejected\");\n this.$closeButtons = $module && $module.querySelectorAll('[value=\"close\"]');\n\n if (\n !this.$module ||\n !this.$acceptButton ||\n !this.$rejectButton ||\n !this.$prompt ||\n !this.$acceptedMessage ||\n !this.$rejectedMessage ||\n !this.$closeButtons\n ) {\n return;\n }\n\n const policies = this.$module.dataset.policies || \"\";\n const extraPolicies = policies\n .split(\",\")\n .filter((x) => x)\n .map((policy) => policy.trim());\n const domain = this.$module.dataset.domain || undefined;\n const path = this.$module.dataset.path || undefined;\n const secure = this.$module.dataset.secure || undefined;\n const policiesKey = this.$module.dataset.policiesKey || undefined;\n\n this.cookies = new Cookies({\n extraPolicies,\n domain,\n path,\n secure,\n policiesKey,\n newInstance: true,\n });\n\n this.cookiePreferencesSet =\n this.$module.dataset.preferencesKey || \"cookie_preferences_set\";\n const cookiePreferencesSet = this.cookies.hasValue(\n this.cookiePreferencesSet,\n \"true\",\n );\n\n if (!cookiePreferencesSet) {\n this.$module.removeAttribute(\"hidden\");\n\n this.$acceptButton.addEventListener(\"click\", () => this.accept());\n this.$rejectButton.addEventListener(\"click\", () => this.reject());\n }\n }\n\n accept() {\n this.$prompt.setAttribute(\"hidden\", \"\");\n this.complete();\n this.$acceptedMessage.removeAttribute(\"hidden\");\n this.$acceptedMessage.focus();\n this.$acceptedMessage.setAttribute(\"tabindex\", \"-1\");\n this.cookies.acceptAllPolicies();\n }\n\n reject() {\n this.$prompt.setAttribute(\"hidden\", \"\");\n this.complete();\n this.$rejectedMessage.removeAttribute(\"hidden\");\n this.$rejectedMessage.focus();\n this.$rejectedMessage.setAttribute(\"tabindex\", \"-1\");\n this.cookies.rejectAllPolicies();\n }\n\n complete() {\n this.cookies.set(this.cookiePreferencesSet, true);\n this.$closeButtons.forEach(($closeButton) => {\n $closeButton.addEventListener(\"click\", () => this.close());\n });\n }\n\n close() {\n this.$module.setAttribute(\"hidden\", \"\");\n }\n}\n","export class ErrorSummary {\n constructor($module) {\n this.$module = $module;\n }\n\n init() {\n if (!this.$module) {\n return;\n }\n\n const disableAutoFocus =\n this.$module.dataset.disableAutofocus === \"true\" || false;\n\n if (!disableAutoFocus) {\n this.setFocus(this.$module);\n }\n }\n\n setFocus($element, options = {}) {\n const isFocusable = $element.getAttribute(\"tabindex\");\n\n if (!isFocusable) {\n $element.setAttribute(\"tabindex\", \"-1\");\n }\n\n /**\n * Handle element focus\n */\n function onFocus() {\n $element.addEventListener(\"blur\", onBlur, { once: true });\n }\n\n /**\n * Handle element blur\n */\n function onBlur() {\n options.onBlur?.call($element);\n\n if (!isFocusable) {\n $element.removeAttribute(\"tabindex\");\n }\n }\n\n // Add listener to reset element on blur, after focus\n $element.addEventListener(\"focus\", onFocus, { once: true });\n\n // Focus element\n options.onBeforeFocus?.call($element);\n $element.focus();\n }\n}\n","import Cookies from \"../../lib/cookies.mjs\";\n\nexport class Footer {\n constructor($module) {\n this.$module = $module;\n this.$themeSelector =\n $module && $module.querySelector(\".tna-footer__theme-selector\");\n this.$tnaTemplate = document.querySelector(\".tna-template\");\n\n if (!this.$module || !this.$themeSelector || !this.$tnaTemplate) {\n return;\n }\n\n this.$themeSelectorButtons = this.$themeSelector.querySelectorAll(\n \"button.tna-footer__theme-selector-button[value]\",\n );\n\n Array.from(this.$themeSelectorButtons).forEach(($themeSelectorButton) => {\n $themeSelectorButton.addEventListener(\"click\", (e) => {\n const $button = e.target;\n this.setTheme($button.value);\n this.selectThemeSelectorButton($button);\n });\n });\n\n this.cookies = new Cookies();\n if (this.cookies.isPolicyAccepted(\"settings\")) {\n this.showThemeSelector();\n }\n this.cookies.on(\"changePolicy\", (data) => {\n if (Object.hasOwn(data, \"settings\")) {\n if (data.settings === true) {\n this.showThemeSelector();\n } else {\n this.cookies.delete(\"theme\");\n this.hideThemeSelector();\n }\n }\n });\n }\n\n showThemeSelector() {\n this.$themeSelector.removeAttribute(\"hidden\");\n if (this.cookies.exists(\"theme\")) {\n const $currentThemeButton = Array.from(this.$themeSelectorButtons).find(\n ($button) => $button.value === this.cookies.get(\"theme\"),\n );\n if ($currentThemeButton) {\n this.selectThemeSelectorButton($currentThemeButton);\n }\n }\n }\n\n hideThemeSelector() {\n this.$themeSelector.setAttribute(\"hidden\", \"\");\n }\n\n setTheme(theme) {\n if (theme === \"light\") {\n this.$tnaTemplate.classList.remove(\n \"tna-template--system-theme\",\n \"tna-template--dark-theme\",\n );\n } else if (theme === \"dark\") {\n this.$tnaTemplate.classList.remove(\"tna-template--system-theme\");\n this.$tnaTemplate.classList.add(`tna-template--dark-theme`);\n } else if (theme === \"system\") {\n this.$tnaTemplate.classList.remove(\"tna-template--dark-theme\");\n this.$tnaTemplate.classList.add(`tna-template--system-theme`);\n } else {\n return;\n }\n this.cookies.set(\"theme\", theme);\n }\n\n selectThemeSelectorButton($selectedButton) {\n Array.from(this.$themeSelectorButtons).forEach(($button) => {\n if ($button.value === $selectedButton.value) {\n $button.classList.remove(\"tna-button--plain\");\n $button.setAttribute(\"aria-current\", true);\n } else {\n $button.classList.add(\"tna-button--plain\");\n $button.removeAttribute(\"aria-current\");\n }\n });\n }\n}\n","export class Gallery {\n constructor($module) {\n this.$module = $module;\n this.$itemsContainer =\n $module && $module.querySelector(\".tna-gallery__items\");\n this.$items =\n this.$itemsContainer &&\n this.$itemsContainer.querySelectorAll(\".tna-gallery__item\");\n this.$navigation =\n $module && $module.querySelector(\".tna-gallery__navigation\");\n this.$navigationItems =\n this.$navigation &&\n $module.querySelectorAll(\".tna-gallery__navigation-item\");\n this.$options = $module && $module.querySelector(\".tna-gallery__options\");\n this.$navigationButtons =\n $module && $module.querySelector(\".tna-gallery__navigation-buttons\");\n\n if (\n !this.$module ||\n !this.$itemsContainer ||\n !this.$items ||\n !this.$navigation ||\n !this.$navigationItems ||\n !this.$options ||\n !this.$navigationButtons\n ) {\n return;\n }\n\n this.$module.classList.add(\"tna-gallery--interactive\");\n\n this.$showIndex = this.$options.querySelector('button[value=\"show-index\"]');\n this.$enterFullscreen = this.$options.querySelector(\n 'button[value=\"enter-fullscreen\"]',\n );\n this.$exitFullscreen = this.$options.querySelector(\n 'button[value=\"exit-fullscreen\"]',\n );\n\n this.$navigationButtonPrev = this.$navigationButtons.querySelector(\n \".tna-gallery__navigation-prev\",\n );\n this.$navigationButtonNext = this.$navigationButtons.querySelector(\n \".tna-gallery__navigation-next\",\n );\n\n this.$module.addEventListener(\"fullscreenchange\", () =>\n this.syncFullScreen(),\n );\n\n this.setup();\n this.allowGridIndex = this.$module.dataset[\"showgrid\"] || false;\n if (this.allowGridIndex) {\n this.showIndex();\n } else {\n this.currentId = this.$items[0].id;\n this.showItem(this.currentId);\n }\n }\n\n setup() {\n this.$items.forEach(($item) => {\n $item.setAttribute(\"hidden\", \"\");\n $item.setAttribute(\"aria-hidden\", \"true\");\n });\n this.$navigation.removeAttribute(\"hidden\");\n this.$navigationItems.forEach(($item) => {\n $item.addEventListener(\"click\", () => {\n this.showItem($item.getAttribute(\"aria-controls\"), true);\n this.$itemsContainer.focus();\n });\n });\n this.$module.addEventListener(\"keydown\", (e) => {\n let preventDefaultKeyAction = false;\n switch (e.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n this.showPreviousItem();\n preventDefaultKeyAction = true;\n break;\n case \"ArrowRight\":\n case \"ArrowDown\":\n this.showNextItem();\n preventDefaultKeyAction = true;\n break;\n case \"Home\":\n this.showFirstItem();\n preventDefaultKeyAction = true;\n break;\n case \"End\":\n this.showLastItem();\n preventDefaultKeyAction = true;\n break;\n }\n if (preventDefaultKeyAction) {\n e.stopPropagation();\n e.preventDefault();\n }\n });\n this.$options.removeAttribute(\"hidden\");\n if (\n document.fullscreenEnabled &&\n this.$enterFullscreen &&\n this.$exitFullscreen\n ) {\n this.$enterFullscreen?.addEventListener(\"click\", () =>\n this.enterFullScreen(),\n );\n this.$exitFullscreen?.addEventListener(\"click\", () =>\n this.exitFullScreen(),\n );\n this.$enterFullscreen?.removeAttribute(\"hidden\");\n }\n this.$showIndex?.addEventListener(\"click\", () => this.showIndex());\n this.$navigationButtons?.removeAttribute(\"hidden\");\n this.$navigationButtonPrev?.addEventListener(\"click\", () => {\n this.showPreviousItem();\n });\n this.$navigationButtonNext?.addEventListener(\"click\", () => {\n this.showNextItem();\n });\n\n this.$liveRegion = document.createElement(\"div\");\n this.$liveRegion.setAttribute(\"aria-live\", \"polite\");\n this.$liveRegion.setAttribute(\"aria-atomic\", \"true\");\n this.$liveRegion.setAttribute(\"class\", \"tna-gallery__item-header\");\n this.$itemsContainer.prepend(this.$liveRegion);\n this.$itemsContainer.classList.add(\"tna-gallery__items--hide-item-titles\");\n }\n\n showIndex() {\n this.showItem(\"\");\n this.$itemsContainer.classList.add(\"tna-gallery__items--hide-items\");\n this.$showIndex?.setAttribute(\"hidden\", \"\");\n }\n\n showItem(id, focus = false) {\n this.$items.forEach(($item) => {\n if (id && $item.id === id) {\n $item.removeAttribute(\"hidden\");\n $item.removeAttribute(\"aria-hidden\");\n if (focus) {\n $item.setAttribute(\"tabindex\", \"0\");\n $item.focus();\n }\n } else {\n $item.setAttribute(\"hidden\", \"\");\n $item.setAttribute(\"aria-hidden\", \"true\");\n }\n $item.setAttribute(\"tabindex\", \"-1\");\n });\n this.$navigationItems.forEach(($item) => {\n if (id) {\n if ($item.getAttribute(\"aria-controls\") === id) {\n $item.setAttribute(\"aria-current\", \"true\");\n if (this.isFullScreen()) {\n $item.scrollIntoView({ block: \"nearest\" });\n }\n } else {\n $item.setAttribute(\"aria-current\", \"false\");\n }\n } else {\n $item.setAttribute(\"aria-current\", \"false\");\n }\n });\n if (this.allowGridIndex) {\n this.$showIndex?.removeAttribute(\"hidden\");\n }\n this.$itemsContainer.classList.remove(\"tna-gallery__items--hide-items\");\n this.currentId = id;\n this.$liveRegion.textContent = `Image ${this.getCurrentItemIndex() + 1} of ${this.$items.length}`;\n }\n\n getCurrentItemIndex() {\n return Array.from(this.$items).findIndex(\n ($item) => $item.id === this.currentId,\n );\n }\n\n showPreviousItem() {\n let nextIndexToShow = this.getCurrentItemIndex() - 1;\n if (nextIndexToShow < 0) {\n nextIndexToShow = this.$items.length - 1;\n }\n this.showItem(this.$items[nextIndexToShow].id);\n }\n\n showNextItem() {\n let nextIndexToShow = this.getCurrentItemIndex() + 1;\n if (nextIndexToShow >= this.$items.length) {\n nextIndexToShow = 0;\n }\n this.showItem(this.$items[nextIndexToShow].id);\n }\n\n showFirstItem() {\n this.showItem(this.$items[0].id);\n }\n\n showLastItem() {\n this.showItem(this.$items[this.$items.length - 1].id);\n }\n\n isFullScreen() {\n return document.fullscreenElement;\n }\n\n enterFullScreen() {\n this.$module.requestFullscreen();\n this.syncFullScreen();\n this.$module.focus();\n }\n\n exitFullScreen() {\n document.exitFullscreen();\n this.syncFullScreen();\n }\n\n syncFullScreen() {\n if (this.isFullScreen()) {\n this.$enterFullscreen.setAttribute(\"hidden\", \"\");\n this.$exitFullscreen.removeAttribute(\"hidden\");\n } else {\n this.$exitFullscreen.setAttribute(\"hidden\", \"\");\n this.$enterFullscreen.removeAttribute(\"hidden\");\n }\n }\n}\n","export class GlobalHeader {\n constructor($module) {\n this.$module = $module;\n this.$toggleButton =\n $module && $module.querySelector(\".tna-global-header__navigation-button\");\n this.$navigation =\n $module &&\n $module.querySelector(\".tna-global-header__navigation-wrapper\");\n this.$topNavigation =\n $module &&\n $module.querySelector(\".tna-global-header__top-navigation-wrapper\");\n this.$links =\n $module &&\n ((this.$navigation &&\n this.$navigation.querySelectorAll(\"[tabindex='0']\")) ||\n (this.$topNavigation &&\n this.$topNavigation.querySelectorAll(\"[tabindex='0']\")));\n this.menuOpened = false;\n this.mql = window.matchMedia(\"(max-width: 48em)\");\n\n if (\n !this.$module ||\n !this.$toggleButton ||\n (!this.$navigation && !this.$topNavigation)\n ) {\n return;\n }\n\n this.$toggleButton.removeAttribute(\"hidden\");\n this.syncState();\n this.$toggleButton.addEventListener(\"click\", () =>\n this.handleToggleNavigation(),\n );\n if (\"addEventListener\" in this.mql) {\n this.mql.addEventListener(\"change\", () => this.syncState());\n } else {\n this.mql.addListener(() => this.syncState());\n }\n\n this.$module.addEventListener(\"keyup\", (e) => {\n if (e.code === \"Escape\" && this.mql.matches) {\n if (this.menuOpened) {\n this.menuOpened = false;\n this.syncState();\n this.$toggleButton.focus();\n }\n }\n });\n }\n\n handleToggleNavigation() {\n this.menuOpened = !this.menuOpened;\n this.syncState();\n }\n\n syncState() {\n if (this.mql.matches) {\n if (this.menuOpened) {\n this.show();\n } else {\n this.hide();\n }\n } else {\n this.show();\n }\n }\n\n hide() {\n if (this.$navigation) {\n this.$navigation.hidden = true;\n this.$navigation.setAttribute(\"aria-hidden\", \"true\");\n }\n if (this.$topNavigation) {\n this.$topNavigation.hidden = true;\n this.$topNavigation.setAttribute(\"aria-hidden\", \"true\");\n }\n this.$toggleButton.setAttribute(\"aria-expanded\", \"false\");\n this.$toggleButton.setAttribute(\"title\", \"Open menu\");\n this.$toggleButton.classList.remove(\n \"tna-global-header__navigation-button--opened\",\n );\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"-1\");\n }\n }\n\n show() {\n if (this.$navigation) {\n this.$navigation.hidden = false;\n this.$navigation.setAttribute(\"aria-hidden\", \"false\");\n }\n if (this.$topNavigation) {\n this.$topNavigation.hidden = false;\n this.$topNavigation.setAttribute(\"aria-hidden\", \"false\");\n }\n this.$toggleButton.setAttribute(\"aria-expanded\", \"true\");\n this.$toggleButton.setAttribute(\"title\", \"Close menu\");\n this.$toggleButton.classList.add(\n \"tna-global-header__navigation-button--opened\",\n );\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\n }\n}\n","export class Header {\n constructor($module) {\n this.$module = $module;\n this.$toggleButton =\n $module && $module.querySelector(\".tna-header__navigation-button\");\n this.$navigation =\n $module && $module.querySelector(\".tna-header__navigation\");\n this.$links =\n $module &&\n this.$navigation &&\n this.$navigation.querySelectorAll(\"[tabindex='0']\");\n this.menuOpened = false;\n this.mql = window.matchMedia(\"(max-width: 48em)\");\n\n if (!this.$module || !this.$toggleButton || !this.$navigation) {\n return;\n }\n\n this.$toggleButton.removeAttribute(\"hidden\");\n this.syncState();\n this.$toggleButton.addEventListener(\"click\", () =>\n this.handleToggleNavigation(),\n );\n if (\"addEventListener\" in this.mql) {\n this.mql.addEventListener(\"change\", () => this.syncState());\n } else {\n this.mql.addListener(() => this.syncState());\n }\n\n this.$module.addEventListener(\"keyup\", (e) => {\n if (e.code === \"Escape\") {\n if (this.menuOpened && this.mql.matches) {\n this.menuOpened = false;\n this.syncState();\n this.$toggleButton.focus();\n }\n }\n });\n }\n\n handleToggleNavigation() {\n this.menuOpened = !this.menuOpened;\n this.syncState();\n }\n\n syncState() {\n if (this.mql.matches) {\n if (this.menuOpened) {\n this.show();\n } else {\n this.hide();\n }\n } else {\n this.show();\n }\n }\n\n show() {\n this.$navigation.classList.add(\"tna-header__navigation--open\");\n this.$navigation.removeAttribute(\"hidden\");\n this.$navigation.setAttribute(\"aria-hidden\", \"false\");\n this.$toggleButton.setAttribute(\"aria-expanded\", \"true\");\n this.$toggleButton.setAttribute(\"title\", \"Close menu\");\n this.$toggleButton.classList.add(\"tna-header__navigation-button--opened\");\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\n }\n\n hide() {\n this.$navigation.classList.remove(\"tna-header__navigation--open\");\n this.$navigation.hidden = true;\n this.$navigation.setAttribute(\"aria-hidden\", \"true\");\n this.$toggleButton.setAttribute(\"aria-expanded\", \"false\");\n this.$toggleButton.setAttribute(\"title\", \"Open menu\");\n this.$toggleButton.classList.remove(\n \"tna-header__navigation-button--opened\",\n );\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"-1\");\n }\n }\n}\n","import uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Picture {\n constructor($module) {\n this.$module = $module;\n this.$imageWrapper =\n $module && $module.querySelector(\".tna-picture__image-wrapper\");\n\n this.$transcriptToggle =\n this.$imageWrapper &&\n this.$imageWrapper.querySelector(\".tna-picture__toggle-transcript\");\n\n this.$transcript =\n $module && $module.querySelector(\".tna-picture__transcript\");\n this.transcriptOpened = false;\n\n if (\n !this.$module ||\n !this.$imageWrapper ||\n !this.$transcriptToggle ||\n !this.$transcript\n ) {\n return;\n }\n\n this.openLabel =\n this.$module.dataset.informationLabelOpen || \"Open transcript\";\n this.closeLabel =\n this.$module.dataset.informationLabelClose || \"Close transcript\";\n\n this.init();\n }\n\n init() {\n const uniqueId = `tna-picture-${uuidv4()}`;\n\n this.$transcriptToggle.removeAttribute(\"hidden\");\n this.$transcriptToggle.setAttribute(\"aria-controls\", uniqueId);\n this.$transcriptToggle.innerText = this.openLabel;\n this.$transcriptToggle.addEventListener(\"click\", () =>\n this.toggleTranscript(),\n );\n\n this.$transcript.setAttribute(\"id\", uniqueId);\n this.$transcript.setAttribute(\"hidden\", \"\");\n\n this.$transcript.addEventListener(\"keydown\", (e) => {\n switch (e.key) {\n case \"Escape\":\n this.toggleTranscript();\n this.$transcriptToggle.focus();\n break;\n }\n });\n }\n\n toggleTranscript() {\n this.transcriptOpened = !this.transcriptOpened;\n if (this.transcriptOpened) {\n this.$transcriptToggle.setAttribute(\"aria-expanded\", true);\n this.$transcriptToggle.innerText = this.closeLabel;\n this.$transcript.removeAttribute(\"hidden\");\n } else {\n this.$transcriptToggle.setAttribute(\"aria-expanded\", false);\n this.$transcriptToggle.innerText = this.openLabel;\n this.$transcript.setAttribute(\"hidden\", \"\");\n }\n }\n}\n","export class SkipLink {\n linkedElementListener = false;\n\n constructor($module) {\n this.$module = $module;\n this.linkedElementId = $module.getAttribute(\"href\").split(\"#\").pop();\n this.$linkedElement =\n $module &&\n this.linkedElementId &&\n document.getElementById(this.linkedElementId);\n\n if (!this.$module || !this.$linkedElement) {\n return;\n }\n this.$module.addEventListener(\"click\", () => this.focusLinkedElement());\n }\n\n focusLinkedElement() {\n if (!this.$linkedElement.getAttribute(\"tabindex\")) {\n this.$linkedElement.setAttribute(\"tabindex\", \"-1\");\n this.$linkedElement.classList.add(\"tna-!--no-focus-style\");\n\n if (!this.linkedElementListener) {\n this.$linkedElement.addEventListener(\"blur\", () =>\n this.removeFocusProperties(),\n );\n this.linkedElementListener = true;\n }\n }\n\n this.$linkedElement.focus();\n }\n\n removeFocusProperties() {\n this.$linkedElement.removeAttribute(\"tabindex\");\n this.$linkedElement.classList.remove(\"tna-!--no-focus-style\");\n }\n}\n","export class Tabs {\n constructor($module) {\n this.$module = $module;\n this.$tabList = $module && $module.querySelector(\".tna-tabs__list\");\n this.$tabListItemLinks =\n $module &&\n this.$tabList &&\n this.$tabList.querySelectorAll(\".tna-tabs__button\");\n this.$tabItems = $module && $module.querySelectorAll(\".tna-tabs__item\");\n\n if (\n !this.$module ||\n !this.$tabList ||\n !this.$tabListItemLinks ||\n !this.$tabItems ||\n this.$tabListItemLinks.length !== this.$tabItems.length\n ) {\n return;\n }\n\n this.currentTabIndex = 0;\n this.init();\n }\n\n init() {\n this.$module.classList.add(\"tna-tabs--interactive\");\n this.$tabList.removeAttribute(\"hidden\");\n this.$tabListItemLinks.forEach(($tabListItemLink) => {\n const tabPanelID = $tabListItemLink.getAttribute(\"aria-controls\");\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n const $tabPanel = document.getElementById(tabPanelID);\n $tabPanel.setAttribute(\"aria-labelledby\", $tabListItemLink.id);\n $tabPanel.setAttribute(\"role\", \"tabpanel\");\n $tabListItemLink.addEventListener(\n \"click\",\n (e) => this.handleItemLinkClick(e),\n true,\n );\n });\n this.switchTabByIndex(this.currentTabIndex);\n this.$module.addEventListener(\"keydown\", (e) =>\n this.handleItemLinkKeyDown(e),\n );\n }\n\n handleItemLinkClick(itemLinkClickEvent) {\n itemLinkClickEvent.preventDefault();\n const targetItem =\n itemLinkClickEvent.currentTarget.getAttribute(\"aria-controls\");\n this.switchTabByID(targetItem);\n }\n\n handleItemLinkKeyDown(itemLinkKeyDownEvent) {\n let preventDefaultKeyAction = false;\n switch (itemLinkKeyDownEvent.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n this.previousTab();\n preventDefaultKeyAction = true;\n break;\n case \"ArrowRight\":\n case \"ArrowDown\":\n this.nextTab();\n preventDefaultKeyAction = true;\n break;\n case \"Home\":\n this.switchTabByIndex(0, true);\n preventDefaultKeyAction = true;\n break;\n case \"End\":\n this.switchTabByIndex(this.$tabListItemLinks.length - 1, true);\n preventDefaultKeyAction = true;\n break;\n default:\n break;\n }\n if (preventDefaultKeyAction) {\n itemLinkKeyDownEvent.stopPropagation();\n itemLinkKeyDownEvent.preventDefault();\n }\n }\n\n nextTab() {\n if (this.currentTabIndex < this.$tabListItemLinks.length - 1) {\n this.switchTabByIndex(this.currentTabIndex + 1, true);\n } else {\n this.switchTabByIndex(0, true);\n }\n }\n\n previousTab() {\n if (this.currentTabIndex >= 1) {\n this.switchTabByIndex(this.currentTabIndex - 1, true);\n } else {\n this.switchTabByIndex(this.$tabListItemLinks.length - 1, true);\n }\n }\n\n switchTabByIndex(newIndex, switchFocus = false) {\n this.currentTabIndex = newIndex;\n this.$tabListItemLinks.forEach(($tabListItemLink, index) => {\n if (index === this.currentTabIndex) {\n $tabListItemLink.setAttribute(\"aria-selected\", true);\n $tabListItemLink.setAttribute(\"tabindex\", \"0\");\n if (switchFocus) {\n $tabListItemLink.focus();\n }\n } else {\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n $tabListItemLink.setAttribute(\"tabindex\", \"-1\");\n }\n });\n this.$tabItems.forEach(($tabItem, index) => {\n if (index === this.currentTabIndex) {\n $tabItem.removeAttribute(\"hidden\");\n $tabItem.setAttribute(\"tabindex\", \"0\");\n } else {\n $tabItem.setAttribute(\"hidden\", \"\");\n $tabItem.setAttribute(\"tabindex\", \"-1\");\n }\n });\n }\n\n switchTabByID(targetId) {\n const index = Array.from(this.$tabItems).findIndex(\n ($tabItem) => $tabItem.getAttribute(\"id\") === targetId,\n );\n this.switchTabByIndex(index);\n }\n}\n","export class TextInput {\n constructor($module) {\n this.$module = $module;\n this.$input = $module && $module.querySelector(\".tna-text-input\");\n\n if (!this.$module || !this.$input) {\n return;\n }\n\n if (this.$input.getAttribute(\"type\") === \"password\") {\n this.$textInputWrapper = document.createElement(\"div\");\n this.$textInputWrapper.classList.add(\"tna-text-input-wrapper\");\n\n this.$textInputPasswordToggle = document.createElement(\"button\");\n this.$textInputPasswordToggle.setAttribute(\"type\", \"button\");\n this.$textInputPasswordToggle.classList.add(\n \"tna-button\",\n \"tna-button--small\",\n \"tna-button--icon-only\",\n );\n this.$textInputPasswordToggle.setAttribute(\n \"aria-controls\",\n this.$input.id,\n );\n this.updateTogglePasswordButtonText();\n\n this.$textInputWrapper.appendChild(this.$input);\n this.$textInputWrapper.appendChild(this.$textInputPasswordToggle);\n this.$module.appendChild(this.$textInputWrapper);\n\n this.$textInputPasswordToggle.addEventListener(\"click\", () => {\n this.togglePasswordType();\n this.$input.focus();\n });\n }\n }\n\n togglePasswordType() {\n if (this.$input.getAttribute(\"type\") === \"password\") {\n this.$input.setAttribute(\"type\", \"text\");\n } else {\n this.$input.setAttribute(\"type\", \"password\");\n }\n this.updateTogglePasswordButtonText();\n }\n\n updateTogglePasswordButtonText() {\n if (this.$input.getAttribute(\"type\") === \"password\") {\n this.$textInputPasswordToggle.innerHTML = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\" height=\"16\" aria-hidden=\"true\" focusable=\"false\"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d=\"M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z\"/></svg>Show password`;\n this.$textInputPasswordToggle.setAttribute(\"title\", \"Show password\");\n this.$textInputPasswordToggle.setAttribute(\"aria-title\", \"Show password\");\n } else {\n this.$textInputPasswordToggle.innerHTML = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 512\" height=\"16\" aria-hidden=\"true\" focusable=\"false\"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d=\"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zM223.1 149.5C248.6 126.2 282.7 112 320 112c79.5 0 144 64.5 144 144c0 24.9-6.3 48.3-17.4 68.7L408 294.5c8.4-19.3 10.6-41.4 4.8-63.3c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3c0 10.2-2.4 19.8-6.6 28.3l-90.3-70.8zM373 389.9c-16.4 6.5-34.3 10.1-53 10.1c-79.5 0-144-64.5-144-144c0-6.9 .5-13.6 1.4-20.2L83.1 161.5C60.3 191.2 44 220.8 34.5 243.7c-3.3 7.9-3.3 16.7 0 24.6c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c47.8 0 89.9-12.9 126.2-32.5L373 389.9z\"/></svg></i>Hide password`;\n this.$textInputPasswordToggle.setAttribute(\"title\", \"Hide password\");\n this.$textInputPasswordToggle.setAttribute(\"aria-title\", \"Hide password\");\n }\n }\n}\n","window.TNAFrontendCookies = window.TNAFrontendCookies || null;\nwindow.TNAFrontendCookieEvents = window.TNAFrontendCookieEvents || null;\n\nexport class CookieEventHandler {\n events = {};\n oneTimeEvents = {};\n\n constructor() {\n if (window.TNAFrontendCookieEvents) {\n return window.TNAFrontendCookieEvents;\n }\n window.TNAFrontendCookieEvents = this;\n }\n\n /**\n * Add an event listener.\n * @param {String} event - The event to add a listener for.\n * @param {Function} callback - The callback function to call when the event is triggered.\n */\n on(event, callback) {\n if (!Object.hasOwn(this.events, event)) {\n this.events[event] = [];\n }\n this.events[event] = [...this.events[event], callback];\n }\n\n once(event, callback) {\n if (!Object.hasOwn(this.oneTimeEvents, event)) {\n this.oneTimeEvents[event] = [];\n }\n this.oneTimeEvents[event] = [...this.oneTimeEvents[event], callback];\n }\n\n /** @protected */\n trigger(event, data = {}) {\n if (Object.hasOwn(this.events, event)) {\n this.events[event].forEach((eventToTrigger) =>\n eventToTrigger.call(this, data),\n );\n }\n if (Object.hasOwn(this.oneTimeEvents, event)) {\n for (let i = this.oneTimeEvents[event].length - 1; i >= 0; i--) {\n const eventToTrigger = this.oneTimeEvents[event][i];\n eventToTrigger.call(this, data);\n this.oneTimeEvents[event].splice(i, 1);\n }\n }\n }\n}\n\n/**\n * Class to handle cookies.\n * @class Cookies\n * @constructor\n * @public\n */\nexport default class Cookies {\n /** @protected */\n extraPolicies = [];\n /** @protected */\n domain = \"\";\n /** @protected */\n path = \"\";\n /** @protected */\n secure = true;\n /** @protected */\n policiesKey = \"\";\n /** @protected */\n events = null;\n /** @protected */\n defaultAge = null;\n\n /**\n * Create a cookie handler.\n * @param {String} [options.extraPolicies=[]] - The extra cookie policies to manage in addition to essential, settings, usage and marketing.\n * @param {String} [options.domain=\"\"] - The domain to register the cookie with.\n * @param {String} [options.path=\"\"] - The domain to register the cookie with.\n * @param {String} [options.secure=true] - Only set cookie in HTTPS environments.\n * @param {String} [options.policiesKey=\"cookies_policy\"] - The name of the cookie.\n * @param {String} [options.newInstance=false] - Create a fresh instance of the cookie class.\n * @param {String} [options.defaultAge=31536000] - The default age of non-session cookies.\n */\n constructor(options = {}) {\n const {\n extraPolicies = [],\n domain = null,\n path = null,\n secure = true,\n policiesKey = \"cookies_policy\",\n newInstance = false,\n defaultAge = 31536000, // 365 days\n } = options;\n if (newInstance) {\n this.destroyInstance();\n } else if (window.TNAFrontendCookies) {\n return window.TNAFrontendCookies;\n }\n this.extraPolicies = extraPolicies;\n if (domain === null) {\n this.domain = document.documentElement.dataset.tnaCookiesDomain || \"\";\n } else {\n this.domain = domain;\n }\n if (path === null) {\n this.path = document.documentElement.dataset.tnaCookiesPath || \"/\";\n } else {\n this.path = path;\n }\n this.secure = secure;\n this.policiesKey = policiesKey;\n this.defaultAge = defaultAge;\n this.events = new CookieEventHandler();\n this.init();\n window.TNAFrontendCookies = this;\n }\n\n /** @protected */\n init() {\n this.savePolicies({\n ...Object.fromEntries(\n this.extraPolicies.map((k) => [k.toLowerCase(), false]),\n ),\n usage: false,\n settings: false,\n marketing: false,\n ...this.policies,\n essential: true,\n });\n }\n\n destroyInstance() {\n window.TNAFrontendCookies = null;\n }\n\n /** @protected */\n get all() {\n const deserialised = {};\n document.cookie\n .split(\"; \")\n .filter((x) => x)\n .forEach((cookie) => {\n const parts = cookie.trim().split(\"=\");\n if (parts[0]) {\n deserialised[parts[0]] = parts[1];\n }\n });\n return deserialised;\n }\n\n /** @protected */\n get policies() {\n try {\n return JSON.parse(this.get(this.policiesKey) || \"{}\");\n } catch (e) {\n return {};\n }\n }\n\n /**\n * Check to see whether a cookie exists or not.\n * @param {String} key - The cookie name.\n * @returns {Boolean}\n */\n exists(key) {\n return Object.hasOwn(this.all, key);\n }\n\n /**\n * Check to see whether a cookie has a particular value.\n * @param {String} key - The cookie name.\n * @param {String|Number|Boolean} value - The value to check against.\n * @returns\n */\n hasValue(key, value) {\n return this.get(key) == value;\n }\n\n /**\n * Get a cookie.\n * @param {String} key - The cookie name.\n * @returns {String|Number|Boolean}\n */\n get(key) {\n return this.exists(key) ? decodeURIComponent(this.all[key]) : null;\n }\n\n /**\n * Set a cookie.\n * @param {String} key - The cookie name.\n * @param {String|Number|Boolean} value - The cookie value.\n * @param {Object} options\n * @param {Number} [options.maxAge=this.defaultAge] - The maximum age of the cookie in seconds.\n * @param {String} [options.path=/] - The path to register the cookie for.\n * @param {String} [options.sameSite=Lax] - The sameSite attribute.\n * @param {String} [options.domain=this.domain] - The domain to register the cookie with.\n * @param {String} [options.path=this.path] - The path to register the cookie with.\n * @param {String} [options.secure=this.secure] - Only set cookie in HTTPS environments.\n * @param {String} [options.session=false] - Set a session cookie.\n */\n set(key, value, options = {}) {\n const {\n maxAge = this.defaultAge,\n sameSite = \"Lax\",\n domain = this.domain,\n path = this.path,\n secure = this.secure,\n session = false,\n } = options;\n if (!key) {\n return;\n }\n const cookie = `${encodeURIComponent(key)}=${encodeURIComponent(value)};${\n domain ? ` domain=${domain}; ` : \"\"\n } samesite=${sameSite}; path=${path}${!session ? `; max-age=${maxAge}` : \"\"}${\n secure ? \"; secure\" : \"\"\n }`;\n document.cookie = cookie;\n this.events.trigger(\"setCookie\", {\n key,\n value,\n maxAge,\n path,\n sameSite,\n domain,\n secure,\n session,\n cookie,\n });\n }\n\n /**\n * Delete a cookie.\n * @param {String} key - The cookie name.\n * @param {String} [path=/] - The path to the cookie is registered on.\n */\n delete(key, path = \"/\", domain = null) {\n const options = { maxAge: -1, path, domain: domain || undefined };\n this.set(key, \"\", options);\n this.events.trigger(\"deleteCookie\", { key, ...options });\n }\n\n /**\n * Delete all cookies.\n */\n deleteAll(path = \"/\", domain = null) {\n Object.keys(this.all).forEach((cookie) => {\n this.delete(cookie, path, domain);\n });\n this.events.trigger(\"deleteAllCookies\", { path, domain });\n }\n\n /**\n * Accept a policy.\n * @param {String} policy - The name of the policy.\n */\n acceptPolicy(policy) {\n this.setPolicy(policy, true);\n this.events.trigger(\"acceptPolicy\", policy);\n this.events.trigger(\"changePolicy\", { [policy]: true });\n }\n\n /**\n * Reject a policy.\n * @param {String} policy - The name of the policy.\n */\n rejectPolicy(policy) {\n this.setPolicy(policy, false);\n this.events.trigger(\"rejectPolicy\", policy);\n this.events.trigger(\"changePolicy\", { [policy]: false });\n }\n\n /**\n * Set a policy.\n * @param {String} policy - The name of the policy.\n * @param {Boolean} accepted - Whether the policy is accepted or not.\n */\n setPolicy(policy, accepted) {\n if (policy === \"essential\") {\n return;\n }\n this.savePolicies({\n ...this.policies,\n [policy]: accepted,\n essential: true,\n });\n this.events.trigger(\"changePolicy\", { [policy]: accepted });\n }\n\n /**\n * Accept all the cookie policies.\n */\n acceptAllPolicies() {\n const allPolicies = Object.fromEntries(\n Object.keys(this.policies).map((k) => [k.toLowerCase(), true]),\n );\n this.savePolicies(allPolicies);\n this.events.trigger(\"acceptAllPolicies\");\n this.events.trigger(\"changePolicy\", allPolicies);\n }\n\n /**\n * Reject all the cookie policies.\n */\n rejectAllPolicies() {\n const allPolicies = {\n ...Object.fromEntries(\n Object.keys(this.policies).map((k) => [k.toLowerCase(), false]),\n ),\n essential: true,\n };\n this.savePolicies(allPolicies);\n this.events.trigger(\"rejectAllPolicies\");\n this.events.trigger(\"changePolicy\", allPolicies);\n }\n\n /**\n * Commit policy preferences to the browser.\n * @param {object} policies - The policies to commit.\n */\n savePolicies(policies) {\n this.set(this.policiesKey, JSON.stringify(policies), {\n maxAge: 60 * 60 * 24 * 365,\n });\n }\n\n /**\n * Get the acceptance status of a policy.\n * @param {String} policy - The name of the policy.\n * @returns {Boolean}\n */\n isPolicyAccepted(policy) {\n return Object.hasOwn(this.policies, policy)\n ? this.policies[policy] === true\n : null;\n }\n\n /**\n * Add an event listener.\n * @param {String} event - The event to add a listener for.\n * @param {Function} callback - The callback function to call when the event is triggered.\n */\n on(event, callback) {\n this.events.on(event, callback);\n }\n\n /**\n * Add a one-time event listener.\n * @param {String} event - The event to add a listener for.\n * @param {Function} callback - The callback function to call when the event is triggered.\n */\n once(event, callback) {\n this.events.once(event, callback);\n }\n}\n","const uuidv4 = () =>\n ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c) =>\n (\n c ^\n (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))\n ).toString(16),\n );\n\nexport default uuidv4;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { Accordion } from \"./components/accordion/accordion.mjs\";\nimport { Breadcrumbs } from \"./components/breadcrumbs/breadcrumbs.mjs\";\nimport { CookieBanner } from \"./components/cookie-banner/cookie-banner.mjs\";\nimport { ErrorSummary } from \"./components/error-summary/error-summary.mjs\";\nimport { Footer } from \"./components/footer/footer.mjs\";\nimport { Gallery } from \"./components/gallery/gallery.mjs\";\nimport { GlobalHeader } from \"./components/global-header/global-header.mjs\";\nimport { Header } from \"./components/header/header.mjs\";\nimport { Picture } from \"./components/picture/picture.mjs\";\nimport { SkipLink } from \"./components/skip-link/skip-link.mjs\";\nimport { Tabs } from \"./components/tabs/tabs.mjs\";\nimport { TextInput } from \"./components/text-input/text-input.mjs\";\nimport Cookies from \"./lib/cookies.mjs\";\n\nconst initAll = (options) => {\n options = typeof options !== \"undefined\" ? options : {};\n const $scope =\n options.scope instanceof HTMLElement ? options.scope : document;\n\n const $body = document.documentElement;\n $body.classList.add(\"tna-template--js-enabled\");\n\n const onFirstTouch = () => {\n window.removeEventListener(\"touchstart\", onFirstTouch);\n $body.classList.add(\"tna-template--touched\");\n };\n\n const onKeyDown = (e) => {\n if (e.key === \"Tab\") {\n $body.classList.add(\"tna-template--tabbed\");\n $body.classList.remove(\"tna-template--clicked\");\n }\n };\n\n const onMouseDown = () => {\n $body.classList.add(\"tna-template--clicked\");\n $body.classList.remove(\"tna-template--tabbed\");\n };\n\n window.addEventListener(\"touchstart\", onFirstTouch);\n window.addEventListener(\"keydown\", onKeyDown);\n window.addEventListener(\"mousedown\", onMouseDown);\n\n const $accordions = $scope.querySelectorAll('[data-module=\"tna-accordion\"]');\n $accordions.forEach(($accordion) => {\n new Accordion($accordion);\n });\n\n const $breadcrumbs = $scope.querySelector('[data-module=\"tna-breadcrumbs\"]');\n if ($breadcrumbs) {\n new Breadcrumbs($breadcrumbs);\n }\n\n const $cookieBanner = $scope.querySelector(\n '[data-module=\"tna-cookie-banner\"]',\n );\n if ($cookieBanner) {\n new CookieBanner($cookieBanner);\n }\n\n const $errorSummary = $scope.querySelector(\n '[data-module=\"tna-error-summary\"]',\n );\n if ($errorSummary) {\n new ErrorSummary($errorSummary).init();\n }\n\n const $footer = $scope.querySelector('[data-module=\"tna-footer\"]');\n if ($footer) {\n new Footer($footer);\n }\n\n const $galleries = $scope.querySelectorAll('[data-module=\"tna-gallery\"]');\n $galleries.forEach(($gallery) => {\n new Gallery($gallery);\n });\n\n const $globalHeader = $scope.querySelector(\n '[data-module=\"tna-global-header\"]',\n );\n if ($globalHeader) {\n new GlobalHeader($globalHeader);\n }\n\n const $header = $scope.querySelector('[data-module=\"tna-header\"]');\n if ($header) {\n new Header($header);\n }\n\n const $pictures = $scope.querySelectorAll('[data-module=\"tna-picture\"]');\n $pictures.forEach(($picture) => {\n new Picture($picture);\n });\n\n const $skipLinks = $scope.querySelectorAll('[data-module=\"tna-skip-link\"]');\n $skipLinks.forEach(($skipLink) => {\n new SkipLink($skipLink);\n });\n\n const $tabs = $scope.querySelectorAll('[data-module=\"tna-tabs\"]');\n $tabs.forEach(($tabModule) => {\n new Tabs($tabModule);\n });\n\n const $textInputs = $scope.querySelectorAll('[data-module=\"tna-text-input\"]');\n $textInputs.forEach(($textInput) => {\n new TextInput($textInput);\n });\n\n const checkTableForScroll = ($tableWrapper) => {\n const scrollable = $tableWrapper.scrollWidth > $tableWrapper.clientWidth;\n const $tableCaption = $tableWrapper.querySelector(\".tna-table__caption\");\n if (scrollable) {\n $tableWrapper.setAttribute(\"tabindex\", \"0\");\n $tableCaption?.classList.add(\"tna-table__caption--scroll\");\n } else {\n $tableWrapper.removeAttribute(\"tabindex\");\n $tableCaption?.classList.remove(\"tna-table__caption--scroll\");\n }\n };\n\n const $tableWrappers = document.querySelectorAll(\n \".tna-table-wrapper:has(.tna-table__caption)\",\n );\n $tableWrappers.forEach(($tableWrapper) => checkTableForScroll($tableWrapper));\n window.addEventListener(\"resize\", () => {\n $tableWrappers.forEach(($tableWrapper) =>\n checkTableForScroll($tableWrapper),\n );\n });\n\n window.matchMedia(\"print\").addEventListener(\"change\", (evt) => {\n if (evt.matches) {\n document\n .querySelectorAll(\".tna-details__details:not([open])\")\n .forEach((e) => {\n e.setAttribute(\"open\", \"\");\n e.dataset.wasClosed = \"\";\n });\n document\n .querySelectorAll(\n \".tna-accordion__content[hidden], .tna-picture__transcript[hidden]\",\n )\n .forEach((e) => {\n e.removeAttribute(\"hidden\");\n e.dataset.wasClosed = \"\";\n });\n } else {\n document\n .querySelectorAll(\".tna-details__details[data-was-closed]\")\n .forEach((e) => {\n e.removeAttribute(\"open\");\n delete e.dataset.wasClosed;\n });\n document\n .querySelectorAll(\n \".tna-accordion__content[data-was-closed], .tna-picture__transcript[data-was-closed]\",\n )\n .forEach((e) => {\n e.setAttribute(\"hidden\", \"\");\n e.dataset.wasClosed = \"\";\n });\n }\n });\n};\n\nexport {\n initAll,\n Cookies,\n Accordion,\n Breadcrumbs,\n CookieBanner,\n ErrorSummary,\n Footer,\n Gallery,\n GlobalHeader,\n Header,\n Picture,\n SkipLink,\n Tabs,\n TextInput,\n};\n"],"names":["root","factory","exports","module","define","amd","self","Accordion","$module","_this","_classCallCheck","this","$items","querySelectorAll","allowMultipleItemsOpen","dataset","forEach","$item","initItem","initState","key","value","_this2","$heading","querySelector","$content","classList","add","remove","removeAttribute","setAttribute","$headingButton","document","createElement","id","innerText","appendChild","addEventListener","getAttribute","closeItem","openItem","_this3","closeAllItemsExcept","concat","trim","$excludeItem","_this4","Array","from","filter","Breadcrumbs","_createClass","$breadcrumbsList","$breadcrumbs","length","contains","uniqueId","uuidv4","$expandable","style","display","$expandButton","innerHTML","focus","insertBefore","nextSibling","CookieBanner","$acceptButton","$rejectButton","$prompt","$acceptedMessage","$rejectedMessage","$closeButtons","extraPolicies","policies","split","x","map","policy","domain","undefined","path","secure","policiesKey","cookies","Cookies","newInstance","cookiePreferencesSet","preferencesKey","hasValue","accept","reject","complete","acceptAllPolicies","rejectAllPolicies","set","$closeButton","close","ErrorSummary","disableAutofocus","setFocus","$element","_options$onBeforeFocu","options","arguments","isFocusable","onBlur","_options$onBlur","call","once","onBeforeFocus","Footer","$themeSelector","$tnaTemplate","$themeSelectorButtons","$themeSelectorButton","e","$button","target","setTheme","selectThemeSelectorButton","isPolicyAccepted","showThemeSelector","on","data","Object","hasOwn","settings","hideThemeSelector","exists","$currentThemeButton","find","get","theme","$selectedButton","Gallery","$itemsContainer","$navigation","$navigationItems","$options","$navigationButtons","$showIndex","$enterFullscreen","$exitFullscreen","$navigationButtonPrev","$navigationButtonNext","syncFullScreen","setup","allowGridIndex","showIndex","currentId","showItem","_this$$showIndex","_this$$navigationButt","_this$$navigationButt2","_this$$navigationButt3","_this$$enterFullscree","_this$$exitFullscreen","_this$$enterFullscree2","preventDefaultKeyAction","showPreviousItem","showNextItem","showFirstItem","showLastItem","stopPropagation","preventDefault","fullscreenEnabled","enterFullScreen","exitFullScreen","$liveRegion","prepend","_this$$showIndex2","_this$$showIndex3","isFullScreen","scrollIntoView","block","textContent","getCurrentItemIndex","findIndex","nextIndexToShow","fullscreenElement","requestFullscreen","exitFullscreen","GlobalHeader","$toggleButton","$topNavigation","$links","menuOpened","mql","window","matchMedia","syncState","handleToggleNavigation","addListener","code","matches","show","hide","hidden","i","Header","Picture","$imageWrapper","$transcriptToggle","$transcript","transcriptOpened","openLabel","informationLabelOpen","closeLabel","informationLabelClose","init","toggleTranscript","SkipLink","linkedElementId","pop","$linkedElement","getElementById","focusLinkedElement","linkedElementListener","removeFocusProperties","Tabs","$tabList","$tabListItemLinks","$tabItems","currentTabIndex","$tabListItemLink","tabPanelID","$tabPanel","handleItemLinkClick","switchTabByIndex","handleItemLinkKeyDown","itemLinkClickEvent","targetItem","currentTarget","switchTabByID","itemLinkKeyDownEvent","previousTab","nextTab","newIndex","switchFocus","index","$tabItem","targetId","TextInput","$input","$textInputWrapper","$textInputPasswordToggle","updateTogglePasswordButtonText","togglePasswordType","TNAFrontendCookies","TNAFrontendCookieEvents","CookieEventHandler","_defineProperty","event","callback","events","_toConsumableArray","oneTimeEvents","eventToTrigger","splice","_options$extraPolicie","_options$domain","_options$path","_options$secure","_options$policiesKey","_options$newInstance","_options$defaultAge","defaultAge","destroyInstance","documentElement","tnaCookiesDomain","tnaCookiesPath","savePolicies","_objectSpread","fromEntries","k","toLowerCase","usage","marketing","essential","deserialised","cookie","parts","JSON","parse","all","decodeURIComponent","_options$maxAge","maxAge","_options$sameSite","sameSite","_options$domain2","_options$path2","_options$secure2","_options$session","session","encodeURIComponent","trigger","keys","setPolicy","accepted","allPolicies","stringify","replace","c","crypto","getRandomValues","Uint8Array","toString","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","o","defineProperty","enumerable","obj","prop","prototype","hasOwnProperty","r","Symbol","toStringTag","initAll","$scope","scope","HTMLElement","$body","onFirstTouch","removeEventListener","$accordion","$cookieBanner","$errorSummary","$footer","$gallery","$globalHeader","$header","$picture","$skipLink","$tabModule","$textInput","checkTableForScroll","$tableWrapper","scrollable","scrollWidth","clientWidth","$tableCaption","$tableWrappers","evt","wasClosed"],"sourceRoot":""}
|
package/nationalarchives/all.mjs
CHANGED
@@ -157,7 +157,7 @@ const initAll = (options) => {
|
|
157
157
|
".tna-accordion__content[data-was-closed], .tna-picture__transcript[data-was-closed]",
|
158
158
|
)
|
159
159
|
.forEach((e) => {
|
160
|
-
e.setAttribute("hidden",
|
160
|
+
e.setAttribute("hidden", "");
|
161
161
|
e.dataset.wasClosed = "";
|
162
162
|
});
|
163
163
|
}
|
@@ -1 +1 @@
|
|
1
|
-
.tna-accordion,.tna-accordion__item{margin-top:32px}.tna-accordion:first-child,.tna-accordion__item:first-child{margin-top:0}.tna-accordion__heading{padding-top:16px}.tna-accordion__body{padding-top:16px}.tna-accordion__details{border-bottom:1px var(--keyline, rgba(38, 38, 42, 0.25)) solid;position:relative;z-index:1}.tna-accordion__details:first-child{border-top:1px var(--keyline, rgba(38, 38, 42, 0.25)) solid}.tna-accordion__details:has(.tna-accordion__summary:focus),.tna-accordion__details:has(.tna-accordion__content:focus){z-index:2}.tna-accordion__summary{width:100%;margin:0;padding:8px 48px 8px 16px;display:block;position:relative;line-height:inherit;text-align:left;list-style:none;background:rgba(0,0,0,0);border:none;border-radius:.1px;cursor:pointer;color:var(--font-dark, rgb(1, 1, 1));font-size:1.125rem;font-family:Open Sans,sans-serif;font-style:normal;font-optical-sizing:auto;font-variation-settings:"wdth" 100;font-weight:700}.tna-accordion__summary *{font-size:inherit}.tna-accordion__summary::before{content:"";width:0;height:0;position:absolute;top:calc(50% - 0.4330127019rem);right:.75rem;border-width:0.8660254038rem .5rem 0 .5rem;border-color:var(--font-light, rgba(1, 1, 1, 0.58)) rgba(0,0,0,0);border-style:solid}.tna-accordion__summary:hover,.tna-accordion__summary:focus-visible{text-decoration:underline;text-decoration-thickness:3.5px;background-color:var(--background-tint, rgb(217, 217, 214))}.tna-accordion__summary:hover::before,.tna-accordion__summary:focus-visible::before{border-color:var(--font-dark, rgb(1, 1, 1)) rgba(0,0,0,0)}.tna-accordion__summary[aria-expanded=true]::before{border-width:0 .5rem 0.8660254038rem .5rem}.tna-accordion__summary:active{z-index:1}.tna-accordion__content{padding:16px;position:relative;border-radius:.1px}.tna-accordion__content:has(.tna-table-wrapper):has(.tna-table){padding-right:0;padding-left:0}.tna-accordion__content .tna-table
|
1
|
+
.tna-accordion,.tna-accordion__item{margin-top:32px}.tna-accordion:first-child,.tna-accordion__item:first-child{margin-top:0}.tna-accordion__heading{padding-top:16px}.tna-accordion__body{padding-top:16px}.tna-accordion__details{border-bottom:1px var(--keyline, rgba(38, 38, 42, 0.25)) solid;position:relative;z-index:1}.tna-accordion__details:first-child{border-top:1px var(--keyline, rgba(38, 38, 42, 0.25)) solid}.tna-accordion__details:has(.tna-accordion__summary:focus),.tna-accordion__details:has(.tna-accordion__content:focus){z-index:2}.tna-accordion__summary{width:100%;margin:0;padding:8px 48px 8px 16px;display:block;position:relative;line-height:inherit;text-align:left;list-style:none;background:rgba(0,0,0,0);border:none;border-radius:.1px;cursor:pointer;color:var(--font-dark, rgb(1, 1, 1));font-size:1.125rem;font-family:Open Sans,sans-serif;font-style:normal;font-optical-sizing:auto;font-variation-settings:"wdth" 100;font-weight:700}.tna-accordion__summary *{font-size:inherit}.tna-accordion__summary::before{content:"";width:0;height:0;position:absolute;top:calc(50% - 0.4330127019rem);right:.75rem;border-width:0.8660254038rem .5rem 0 .5rem;border-color:var(--font-light, rgba(1, 1, 1, 0.58)) rgba(0,0,0,0);border-style:solid}.tna-accordion__summary:hover,.tna-accordion__summary:focus-visible{text-decoration:underline;text-decoration-thickness:3.5px;background-color:var(--background-tint, rgb(217, 217, 214))}.tna-accordion__summary:hover::before,.tna-accordion__summary:focus-visible::before{border-color:var(--font-dark, rgb(1, 1, 1)) rgba(0,0,0,0)}.tna-accordion__summary[aria-expanded=true]::before{border-width:0 .5rem 0.8660254038rem .5rem}.tna-accordion__summary:active{z-index:1}.tna-accordion__body .tna-table-wrapper,.tna-accordion__content .tna-table-wrapper{padding-right:0;padding-left:0;left:0}.tna-accordion__content{padding:16px;position:relative;border-radius:.1px}.tna-accordion__content:has(.tna-table-wrapper):has(.tna-table){padding-right:0;padding-left:0}.tna-accordion__content .tna-table{width:calc(100% - 32px);margin-right:16px;margin-left:16px}.tna-accordion__content .tna-table__caption{padding-top:0;padding-bottom:16px;font-size:inherit;line-height:inherit;text-align:left;caption-side:top}@media(forced-colors: active){.tna-accordion__summary::before{content:"↓";width:auto;height:auto;top:calc(50% - .5rem);line-height:1rem;border:none}.tna-accordion__summary[aria-expanded=true]::before{content:"↑";border:none}}/*# sourceMappingURL=accordion.css.map */
|