@nationalarchives/frontend 0.1.16-prerelease → 0.1.18-prerelease

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/nationalarchives/all.css +13 -1
  2. package/nationalarchives/all.css.map +1 -1
  3. package/nationalarchives/all.js +1 -1
  4. package/nationalarchives/all.js.map +1 -1
  5. package/nationalarchives/all.scss +2 -3
  6. package/nationalarchives/assets/fonts/fa-brands-400.ttf +0 -0
  7. package/nationalarchives/assets/fonts/fa-brands-400.woff2 +0 -0
  8. package/nationalarchives/assets/fonts/fa-regular-400.ttf +0 -0
  9. package/nationalarchives/assets/fonts/fa-regular-400.woff2 +0 -0
  10. package/nationalarchives/assets/fonts/fa-solid-900.ttf +0 -0
  11. package/nationalarchives/assets/fonts/fa-solid-900.woff2 +0 -0
  12. package/nationalarchives/components/breadcrumbs/_index.scss +2 -2
  13. package/nationalarchives/components/button/_button-group.scss +18 -0
  14. package/nationalarchives/components/button/_index.scss +24 -7
  15. package/nationalarchives/components/button/button.stories.js +63 -6
  16. package/nationalarchives/components/button/fixtures.json +3 -3
  17. package/nationalarchives/components/button/macro-options.json +13 -1
  18. package/nationalarchives/components/button/template.njk +7 -2
  19. package/nationalarchives/components/card/_index.scss +62 -47
  20. package/nationalarchives/components/card/card.stories.js +59 -8
  21. package/nationalarchives/components/card/fixtures.json +59 -20
  22. package/nationalarchives/components/card/macro-options.json +14 -2
  23. package/nationalarchives/components/card/template.njk +12 -8
  24. package/nationalarchives/components/filters/_index.scss +19 -14
  25. package/nationalarchives/components/footer/_index.scss +194 -60
  26. package/nationalarchives/components/footer/fixtures.json +1 -1
  27. package/nationalarchives/components/footer/footer.stories.js +80 -71
  28. package/nationalarchives/components/footer/macro-options.json +34 -8
  29. package/nationalarchives/components/footer/template.njk +110 -53
  30. package/nationalarchives/components/header/_index.scss +40 -4
  31. package/nationalarchives/components/hero/_index.scss +1 -1
  32. package/nationalarchives/components/index-grid/_index.scss +27 -5
  33. package/nationalarchives/components/index-grid/index-grid.stories.js +25 -1
  34. package/nationalarchives/components/index-grid/macro-options.json +12 -0
  35. package/nationalarchives/components/index-grid/template.njk +9 -11
  36. package/nationalarchives/components/message/_index.scss +8 -0
  37. package/nationalarchives/components/picture/_index.scss +2 -0
  38. package/nationalarchives/components/picture/picture.js +1 -1
  39. package/nationalarchives/components/picture/picture.js.map +1 -1
  40. package/nationalarchives/components/picture/picture.mjs +2 -0
  41. package/nationalarchives/components/skip-link/skip-link.stories.js +3 -2
  42. package/nationalarchives/components/tabs/_index.scss +6 -3
  43. package/nationalarchives/components/tabs/tabs.stories.js +6 -6
  44. package/nationalarchives/lib/font-awesome/_animated.scss +276 -0
  45. package/nationalarchives/lib/font-awesome/_bordered-pulled.scss +20 -0
  46. package/nationalarchives/lib/font-awesome/_core.scss +42 -0
  47. package/nationalarchives/lib/font-awesome/_fixed-width.scss +7 -0
  48. package/nationalarchives/lib/font-awesome/_functions.scss +57 -0
  49. package/nationalarchives/lib/font-awesome/_icons.scss +11 -0
  50. package/nationalarchives/lib/font-awesome/_list.scss +20 -0
  51. package/nationalarchives/lib/font-awesome/_mixins.scss +74 -0
  52. package/nationalarchives/lib/font-awesome/_rotated-flipped.scss +31 -0
  53. package/nationalarchives/lib/font-awesome/_screen-reader.scss +14 -0
  54. package/nationalarchives/lib/font-awesome/_shims.scss +2653 -0
  55. package/nationalarchives/lib/font-awesome/_sizing.scss +16 -0
  56. package/nationalarchives/lib/font-awesome/_stacked.scss +32 -0
  57. package/nationalarchives/lib/font-awesome/_variables.scss +4976 -0
  58. package/nationalarchives/lib/font-awesome/brands.scss +34 -0
  59. package/nationalarchives/lib/font-awesome/fontawesome.scss +21 -0
  60. package/nationalarchives/lib/font-awesome/regular.scss +28 -0
  61. package/nationalarchives/lib/font-awesome/solid.scss +28 -0
  62. package/nationalarchives/lib/font-awesome/v4-shims.scss +11 -0
  63. package/nationalarchives/stories/utilities/colour-schemes/colour-schemes.mdx +22 -0
  64. package/nationalarchives/stories/utilities/colour-schemes/colour-schemes.stories.js +483 -97
  65. package/nationalarchives/stories/utilities/overrides/overrides.mdx +37 -57
  66. package/nationalarchives/stories/utilities/typography/heading-groups.stories.js +1 -1
  67. package/nationalarchives/stories/utilities/typography/typography.mdx +2 -0
  68. package/nationalarchives/stories/utilities/typography/typography.stories.js +20 -1
  69. package/nationalarchives/templates/layouts/_generic.njk +1 -1
  70. package/nationalarchives/tools/_colour.scss +86 -41
  71. package/nationalarchives/tools/_typography.scss +13 -0
  72. package/nationalarchives/utilities/_font-awesome.scss +5 -0
  73. package/nationalarchives/utilities/_global.scss +70 -26
  74. package/nationalarchives/utilities/_index.scss +1 -0
  75. package/nationalarchives/utilities/_overrides.scss +42 -10
  76. package/nationalarchives/utilities/_typography.scss +198 -59
  77. package/nationalarchives/variables/_assets.scss +1 -0
  78. package/nationalarchives/variables/_colour.scss +29 -23
  79. package/nationalarchives/variables/_index.scss +1 -0
  80. package/nationalarchives/variables/_spacing.scss +3 -1
  81. package/nationalarchives/variables/_typography.scss +4 -1
  82. package/package.json +13 -13
  83. package/nationalarchives/patterns/_index.scss +0 -1
  84. package/nationalarchives/patterns/featured-collection/_index.scss +0 -13
  85. package/nationalarchives/patterns/featured-collection/featured-collection.stories.js +0 -34
  86. package/nationalarchives/patterns/featured-collection/macro-options.json +0 -20
  87. package/nationalarchives/patterns/featured-collection/macro.njk +0 -3
  88. package/nationalarchives/patterns/featured-collection/template.njk +0 -96
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.TNAFrontend=e():t.TNAFrontend=e()}(self,(()=>(()=>{"use strict";var t={908:(t,e,i)=>{i.d(e,{Breadcrumbs:()=>s});var n=i(948);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==r(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!==r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(n.key),"symbol"===r(a)?a:String(a)),n)}var a}var s=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$breadcrumbsListWrapper=e&&e.querySelector(".tna-breadcrumbs__wrapper"),this.$breadcrumbsList=e&&this.$breadcrumbsListWrapper&&e.querySelector(".tna-breadcrumbs__list"),this.$breadcrumbs=e&&this.$breadcrumbsListWrapper&&this.$breadcrumbsList&&e.querySelectorAll(".tna-breadcrumbs__item")}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$breadcrumbsListWrapper&&this.$breadcrumbsList&&this.$breadcrumbs&&this.$breadcrumbs.length>2&&!this.$module.classList.contains("tna-breadcrumbs--no-collapse")){var e="tna-breadcrumbs-".concat((0,n.Z)()),i=document.createElement("li");i.classList.add("tna-breadcrumbs__item","tna-breadcrumbs__item--expandable"),i.style.display="none";var r=document.createElement("button");r.classList.add("tna-breadcrumbs__link"),r.innerHTML="<span class='tna-visually-hidden'>Expand breadcrumbs</span>&hellip;",r.setAttribute("aria-expanded","false"),r.setAttribute("aria-controls",e),r.addEventListener("click",(function(){t.$module.classList.remove("tna-breadcrumbs--collapsed"),i.remove(),t.$breadcrumbsListWrapper.setAttribute("tabindex","0"),t.$breadcrumbsListWrapper.focus(),t.$breadcrumbsListWrapper.setAttribute("tabindex","-1")})),i.appendChild(r),this.$breadcrumbsList.setAttribute("id",e),this.$breadcrumbsList.insertBefore(i,this.$breadcrumbs[this.$breadcrumbs.length-2].nextSibling),this.$module.classList.add("tna-breadcrumbs--collapsed")}}}])&&a(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},8:(t,e,i)=>{i.d(e,{Header:()=>s});var n=i(948);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==r(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!==r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(n.key),"symbol"===r(a)?a:String(a)),n)}var a}var s=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$toggleButtonWrapper=e&&e.querySelector(".tna-header__navigation-toggle"),this.$navigation=e&&e.querySelector(".tna-header__navigation"),this.$links=e&&this.$navigation&&this.$navigation.querySelectorAll("[tabindex='0']"),this.menuOpened=!1,this.mql=window.matchMedia("(max-width: 768px)")}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$toggleButtonWrapper&&this.$navigation){var e="tna-menu-content-".concat((0,n.Z)());this.$navigation.setAttribute("id",e),this.$toggleButton=document.createElement("button"),this.$toggleButton.innerText="Menu",this.$toggleButton.setAttribute("aria-controls",e),this.$toggleButton.setAttribute("aria-haspopup","true"),this.$toggleButton.classList.add("tna-header__navigation-toggle-button"),this.$hamburger=document.createElement("div"),this.$hamburger.classList.add("tna-header__hamburger"),this.$toggleButton.appendChild(this.$hamburger),this.$toggleButtonWrapper.appendChild(this.$toggleButton),this.syncState(),this.$toggleButton.addEventListener("click",(function(){return t.handleToggleNavigation()})),"addEventListener"in this.mql?this.mql.addEventListener("change",(function(){return t.syncState()})):this.mql.addListener((function(){return t.syncState()}))}}},{key:"handleToggleNavigation",value:function(){this.menuOpened=!this.menuOpened,this.syncState()}},{key:"syncState",value:function(){if(this.mql.matches)if(this.menuOpened){this.$navigation.classList.add("tna-header__navigation--open"),this.$navigation.hidden=!1,this.$navigation.setAttribute("aria-hidden","false"),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu"),this.$toggleButton.classList.add("tna-header__navigation-toggle-button--opened");for(var t=0;t<this.$links.length;t++)this.$links[t].setAttribute("tabindex","0")}else{this.$navigation.classList.remove("tna-header__navigation--open"),this.$navigation.hidden=!0,this.$navigation.setAttribute("aria-hidden","true"),this.$toggleButton.setAttribute("aria-expanded","false"),this.$toggleButton.setAttribute("title","Open menu"),this.$toggleButton.classList.remove("tna-header__navigation-toggle-button--opened");for(var e=0;e<this.$links.length;e++)this.$links[e].setAttribute("tabindex","-1")}else{this.$navigation.classList.add("tna-header__navigation--open"),this.$navigation.hidden=!1,this.$navigation.setAttribute("aria-hidden","false"),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu");for(var i=0;i<this.$links.length;i++)this.$links[i].setAttribute("tabindex","0")}}}])&&a(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},765:(t,e,i)=>{i.d(e,{Picture:()=>s});var n=i(948);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==r(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!==r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(n.key),"symbol"===r(a)?a:String(a)),n)}var a}var s=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$imageWrapper=e&&e.querySelector(".tna-picture__image-wrapper"),this.$transcript=e&&e.querySelector(".tna-picture__transcript"),this.transcriptOpened=!1}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$imageWrapper&&this.$transcript){var e="tna-picture-".concat((0,n.Z)());this.$transcriptToggle=document.createElement("button"),this.$transcriptToggle.classList.add("tna-picture__toggle-transcript","tna-button"),this.$transcriptToggle.setAttribute("aria-controls",e),this.$transcriptToggle.setAttribute("aria-expanded",!1),this.$transcriptToggle.innerText="Open transcript",this.$transcriptToggle.addEventListener("click",(function(){return t.handleToggleTranscript()})),this.$imageWrapper.appendChild(this.$transcriptToggle),this.$transcript.setAttribute("id",e),this.$transcript.setAttribute("hidden",!0)}}},{key:"handleToggleTranscript",value:function(){var t="tna-picture__toggle-transcript--opened";this.transcriptOpened=!this.transcriptOpened,this.transcriptOpened?(this.$transcriptToggle.classList.add(t),this.$transcriptToggle.setAttribute("aria-expanded",!0),this.$transcriptToggle.innerText="Close transcript",this.$transcript.removeAttribute("hidden")):(this.$transcriptToggle.classList.remove(t),this.$transcriptToggle.setAttribute("aria-expanded",!1),this.$transcriptToggle.innerText="Open transcript",this.$transcript.setAttribute("hidden",!0))}}])&&a(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},554:(t,e,i)=>{function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function r(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==n(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,"string");if("object"!==n(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(r.key),"symbol"===n(a)?a:String(a)),r)}var a}i.d(e,{SensitiveImage:()=>a});var a=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$imageDetails=e&&e.querySelector(".tna-sensitive-image__details"),this.$image=e&&e.querySelector(".tna-sensitive-image__image"),this.imageIsVisible=!1}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;this.$module&&this.$imageDetails&&this.$image&&this.$imageDetails.addEventListener("toggle",(function(){return t.handleImageDetailsToggle()}))}},{key:"handleImageDetailsToggle",value:function(){this.$imageDetails.hasAttribute("open")&&this.$image.focus({preventScroll:!0,focusVisible:!0})}}])&&r(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},973:(t,e,i)=>{function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function r(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return a(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?a(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}function s(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==n(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,"string");if("object"!==n(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(r.key),"symbol"===n(a)?a:String(a)),r)}var a}i.d(e,{Tabs:()=>o});var o=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$tabList=e&&e.querySelector(".tna-tabs__list"),this.$tabListItemLinks=e&&this.$tabList&&e.querySelectorAll(".tna-tabs__list-item-link"),this.$tabItems=e&&e.querySelectorAll(".tna-tabs__item")}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$tabList&&this.$tabListItemLinks&&this.$tabItems&&this.$tabListItemLinks.length===this.$tabItems.length){this.sticky=this.$module.classList.contains("tna-tabs--sticky");var e=window.location.hash.replace(/^#/,"");this.$newTabList=document.createElement("div"),this.$newTabList.setAttribute("role","tablist"),this.$newTabList.setAttribute("class",this.$tabList.getAttribute("class")),this.$tabItems.forEach((function(t,i){t.setAttribute("role","tabpanel"),t.setAttribute("aria-labelledby","".concat(t.getAttribute("id"),"-tab")),t.setAttribute("tabindex","0"),(e&&t.getAttribute("id")!==e||!e&&i>0)&&t.setAttribute("hidden",!0)})),this.$tabListItemLinks.forEach((function(e){var i=document.createElement("button");i.innerText=e.innerText,i.setAttribute("class",e.getAttribute("class")),i.setAttribute("role","tab"),i.setAttribute("id",e.getAttribute("id")),i.setAttribute("aria-controls",e.getAttribute("href").replace(/^#/,"")),i.setAttribute("tabindex","-1"),t.$newTabList.appendChild(i)})),this.$tabList.replaceWith(this.$newTabList),this.$tabListItemLinks=this.$module.querySelectorAll(".tna-tabs__list-item-link"),this.$tabListItemLinks.forEach((function(i,n){e&&i.getAttribute("aria-controls")==="".concat(e)||!e&&0===n?(i.classList.add("tna-tabs__list-item-link--selected"),i.setAttribute("aria-selected",!0),i.setAttribute("tabindex","0")):i.setAttribute("aria-selected",!1),i.addEventListener("keydown",(function(e){return t.handleItemLinkKeyDown(e)}),!0),i.addEventListener("click",(function(e){return t.handleItemLinkClick(e)}),!0)}))}}},{key:"handleItemLinkClick",value:function(t){t.preventDefault();var e=t.currentTarget.getAttribute("aria-controls");this.switchTab(e)}},{key:"handleItemLinkKeyDown",value:function(t){var e=t.currentTarget,i=!1;switch(t.key){case"ArrowLeft":this.setSelectedToPreviousTab(e),i=!0;break;case"ArrowRight":this.setSelectedToNextTab(e),i=!0;break;case"Home":this.switchTab(this.$tabListItemLinks[0].getAttribute("aria-controls")),i=!0;break;case"End":this.switchTab(this.$tabListItemLinks[this.$tabListItemLinks.length-1].getAttribute("aria-controls")),i=!0}i&&(t.stopPropagation(),t.preventDefault())}},{key:"setSelectedToNextTab",value:function(t){console.log("setSelectedToNextTab",t);var e,i=r(this.$tabListItemLinks).findIndex((function(e){return e.getAttribute("id")===t.getAttribute("id")}));e=i<this.$tabListItemLinks.length-1?i+1:0,console.log(i,e),this.switchTab(this.$tabListItemLinks[e].getAttribute("aria-controls"))}},{key:"setSelectedToPreviousTab",value:function(t){console.log("setSelectedToPreviousTab",t);var e,i=r(this.$tabListItemLinks).findIndex((function(e){return e.getAttribute("id")===t.getAttribute("id")}));e=i>=1?i-1:this.$tabListItemLinks.length-1,console.log(i,e),this.switchTab(this.$tabListItemLinks[e].getAttribute("aria-controls"))}},{key:"switchTab",value:function(t){this.$tabListItemLinks.forEach((function(e){e.getAttribute("aria-controls")===t?(e.classList.add("tna-tabs__list-item-link--selected"),e.setAttribute("aria-selected",!0),e.setAttribute("tabindex","0"),e.focus()):(e.classList.remove("tna-tabs__list-item-link--selected"),e.setAttribute("aria-selected",!1),e.setAttribute("tabindex","-1"))})),this.$tabItems.forEach((function(e){e.getAttribute("id")===t?(e.removeAttribute("hidden"),e.setAttribute("tabindex","0")):(e.setAttribute("hidden",!0),e.setAttribute("tabindex","-1"))})),this.sticky&&(history.replaceState?history.replaceState(null,null,"#".concat(t)):location.hash="#".concat(t))}}])&&s(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},948:(t,e,i)=>{i.d(e,{Z:()=>n});const n=function(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(t){return(t^crypto.getRandomValues(new Uint8Array(1))[0]&15>>t/4).toString(16)}))}}},e={};function i(n){var r=e[n];if(void 0!==r)return r.exports;var a=e[n]={exports:{}};return t[n](a,a.exports,i),a.exports}i.d=(t,e)=>{for(var n in e)i.o(e,n)&&!i.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),i.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};return(()=>{i.r(n),i.d(n,{Breadcrumbs:()=>t.Breadcrumbs,Header:()=>e.Header,Picture:()=>r.Picture,SensitiveImage:()=>a.SensitiveImage,Tabs:()=>s.Tabs,initAll:()=>l});var t=i(908),e=i(8),r=i(765),a=i(554),s=i(973),o=document.documentElement;o.classList.add("tna-template--js-enabled"),window.addEventListener("touchstart",(function t(){window.removeEventListener("touchstart",t),o.classList.add("tna-template--touched")})),window.addEventListener("keydown",(function(t){"Tab"===t.key&&(o.classList.add("tna-template--tabbed"),o.classList.remove("tna-template--clicked"))})),window.addEventListener("mousedown",(function(){o.classList.add("tna-template--clicked"),o.classList.remove("tna-template--tabbed")})),document.documentElement.classList.contains("tna-template--system-theme")&&(document.documentElement.classList.add(window.matchMedia("(prefers-color-scheme: dark)").matches?"tna-template--dark-theme":"tna-template--light-theme"),window.matchMedia("(prefers-contrast: more)").matches&&document.documentElement.classList.add("tna-template--high-contrast-theme"));var l=function(i){var n=(i=void 0!==i?i:{}).scope instanceof HTMLElement?i.scope:document,o=n.querySelector('[data-module="tna-breadcrumbs"]');o&&new t.Breadcrumbs(o).init();var l=n.querySelector('[data-module="tna-header"]');l&&new e.Header(l).init(),n.querySelectorAll('[data-module="tna-picture"]').forEach((function(t){new r.Picture(t).init()})),n.querySelectorAll('[data-module="tna-sensitive-image"]').forEach((function(t){new a.SensitiveImage(t).init()})),n.querySelectorAll('[data-module="tna-tabs"]').forEach((function(t){new s.Tabs(t).init()}))}})(),n})()));
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.TNAFrontend=e():t.TNAFrontend=e()}(self,(()=>(()=>{"use strict";var t={908:(t,e,i)=>{i.d(e,{Breadcrumbs:()=>s});var n=i(948);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==r(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!==r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(n.key),"symbol"===r(a)?a:String(a)),n)}var a}var s=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$breadcrumbsListWrapper=e&&e.querySelector(".tna-breadcrumbs__wrapper"),this.$breadcrumbsList=e&&this.$breadcrumbsListWrapper&&e.querySelector(".tna-breadcrumbs__list"),this.$breadcrumbs=e&&this.$breadcrumbsListWrapper&&this.$breadcrumbsList&&e.querySelectorAll(".tna-breadcrumbs__item")}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$breadcrumbsListWrapper&&this.$breadcrumbsList&&this.$breadcrumbs&&this.$breadcrumbs.length>2&&!this.$module.classList.contains("tna-breadcrumbs--no-collapse")){var e="tna-breadcrumbs-".concat((0,n.Z)()),i=document.createElement("li");i.classList.add("tna-breadcrumbs__item","tna-breadcrumbs__item--expandable"),i.style.display="none";var r=document.createElement("button");r.classList.add("tna-breadcrumbs__link"),r.innerHTML="<span class='tna-visually-hidden'>Expand breadcrumbs</span>&hellip;",r.setAttribute("aria-expanded","false"),r.setAttribute("aria-controls",e),r.addEventListener("click",(function(){t.$module.classList.remove("tna-breadcrumbs--collapsed"),i.remove(),t.$breadcrumbsListWrapper.setAttribute("tabindex","0"),t.$breadcrumbsListWrapper.focus(),t.$breadcrumbsListWrapper.setAttribute("tabindex","-1")})),i.appendChild(r),this.$breadcrumbsList.setAttribute("id",e),this.$breadcrumbsList.insertBefore(i,this.$breadcrumbs[this.$breadcrumbs.length-2].nextSibling),this.$module.classList.add("tna-breadcrumbs--collapsed")}}}])&&a(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},8:(t,e,i)=>{i.d(e,{Header:()=>s});var n=i(948);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==r(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!==r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(n.key),"symbol"===r(a)?a:String(a)),n)}var a}var s=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$toggleButtonWrapper=e&&e.querySelector(".tna-header__navigation-toggle"),this.$navigation=e&&e.querySelector(".tna-header__navigation"),this.$links=e&&this.$navigation&&this.$navigation.querySelectorAll("[tabindex='0']"),this.menuOpened=!1,this.mql=window.matchMedia("(max-width: 768px)")}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$toggleButtonWrapper&&this.$navigation){var e="tna-menu-content-".concat((0,n.Z)());this.$navigation.setAttribute("id",e),this.$toggleButton=document.createElement("button"),this.$toggleButton.innerText="Menu",this.$toggleButton.setAttribute("aria-controls",e),this.$toggleButton.setAttribute("aria-haspopup","true"),this.$toggleButton.classList.add("tna-header__navigation-toggle-button"),this.$hamburger=document.createElement("div"),this.$hamburger.classList.add("tna-header__hamburger"),this.$toggleButton.appendChild(this.$hamburger),this.$toggleButtonWrapper.appendChild(this.$toggleButton),this.syncState(),this.$toggleButton.addEventListener("click",(function(){return t.handleToggleNavigation()})),"addEventListener"in this.mql?this.mql.addEventListener("change",(function(){return t.syncState()})):this.mql.addListener((function(){return t.syncState()}))}}},{key:"handleToggleNavigation",value:function(){this.menuOpened=!this.menuOpened,this.syncState()}},{key:"syncState",value:function(){if(this.mql.matches)if(this.menuOpened){this.$navigation.classList.add("tna-header__navigation--open"),this.$navigation.hidden=!1,this.$navigation.setAttribute("aria-hidden","false"),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu"),this.$toggleButton.classList.add("tna-header__navigation-toggle-button--opened");for(var t=0;t<this.$links.length;t++)this.$links[t].setAttribute("tabindex","0")}else{this.$navigation.classList.remove("tna-header__navigation--open"),this.$navigation.hidden=!0,this.$navigation.setAttribute("aria-hidden","true"),this.$toggleButton.setAttribute("aria-expanded","false"),this.$toggleButton.setAttribute("title","Open menu"),this.$toggleButton.classList.remove("tna-header__navigation-toggle-button--opened");for(var e=0;e<this.$links.length;e++)this.$links[e].setAttribute("tabindex","-1")}else{this.$navigation.classList.add("tna-header__navigation--open"),this.$navigation.hidden=!1,this.$navigation.setAttribute("aria-hidden","false"),this.$toggleButton.setAttribute("aria-expanded","true"),this.$toggleButton.setAttribute("title","Close menu");for(var i=0;i<this.$links.length;i++)this.$links[i].setAttribute("tabindex","0")}}}])&&a(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},765:(t,e,i)=>{i.d(e,{Picture:()=>s});var n=i(948);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==r(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!==r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(n.key),"symbol"===r(a)?a:String(a)),n)}var a}var s=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$imageWrapper=e&&e.querySelector(".tna-picture__image-wrapper"),this.$transcript=e&&e.querySelector(".tna-picture__transcript"),this.transcriptOpened=!1}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$imageWrapper&&this.$transcript){var e="tna-picture-".concat((0,n.Z)());this.$transcriptToggle=document.createElement("button"),this.$transcriptToggle.classList.add("tna-picture__toggle-transcript","tna-button","tna-button--accent","tna-button--solid-hover"),this.$transcriptToggle.setAttribute("aria-controls",e),this.$transcriptToggle.setAttribute("aria-expanded",!1),this.$transcriptToggle.innerText="Open transcript",this.$transcriptToggle.addEventListener("click",(function(){return t.handleToggleTranscript()})),this.$imageWrapper.appendChild(this.$transcriptToggle),this.$transcript.setAttribute("id",e),this.$transcript.setAttribute("hidden",!0)}}},{key:"handleToggleTranscript",value:function(){var t="tna-picture__toggle-transcript--opened";this.transcriptOpened=!this.transcriptOpened,this.transcriptOpened?(this.$transcriptToggle.classList.add(t),this.$transcriptToggle.setAttribute("aria-expanded",!0),this.$transcriptToggle.innerText="Close transcript",this.$transcript.removeAttribute("hidden")):(this.$transcriptToggle.classList.remove(t),this.$transcriptToggle.setAttribute("aria-expanded",!1),this.$transcriptToggle.innerText="Open transcript",this.$transcript.setAttribute("hidden",!0))}}])&&a(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},554:(t,e,i)=>{function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function r(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==n(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,"string");if("object"!==n(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(r.key),"symbol"===n(a)?a:String(a)),r)}var a}i.d(e,{SensitiveImage:()=>a});var a=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$imageDetails=e&&e.querySelector(".tna-sensitive-image__details"),this.$image=e&&e.querySelector(".tna-sensitive-image__image"),this.imageIsVisible=!1}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;this.$module&&this.$imageDetails&&this.$image&&this.$imageDetails.addEventListener("toggle",(function(){return t.handleImageDetailsToggle()}))}},{key:"handleImageDetailsToggle",value:function(){this.$imageDetails.hasAttribute("open")&&this.$image.focus({preventScroll:!0,focusVisible:!0})}}])&&r(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},973:(t,e,i)=>{function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function r(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return a(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?a(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}function s(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if("object"!==n(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,"string");if("object"!==n(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(r.key),"symbol"===n(a)?a:String(a)),r)}var a}i.d(e,{Tabs:()=>o});var o=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.$module=e,this.$tabList=e&&e.querySelector(".tna-tabs__list"),this.$tabListItemLinks=e&&this.$tabList&&e.querySelectorAll(".tna-tabs__list-item-link"),this.$tabItems=e&&e.querySelectorAll(".tna-tabs__item")}var e,i;return e=t,(i=[{key:"init",value:function(){var t=this;if(this.$module&&this.$tabList&&this.$tabListItemLinks&&this.$tabItems&&this.$tabListItemLinks.length===this.$tabItems.length){this.sticky=this.$module.classList.contains("tna-tabs--sticky");var e=window.location.hash.replace(/^#/,"");this.$newTabList=document.createElement("div"),this.$newTabList.setAttribute("role","tablist"),this.$newTabList.setAttribute("class",this.$tabList.getAttribute("class")),this.$tabItems.forEach((function(t,i){t.setAttribute("role","tabpanel"),t.setAttribute("aria-labelledby","".concat(t.getAttribute("id"),"-tab")),t.setAttribute("tabindex","0"),(e&&t.getAttribute("id")!==e||!e&&i>0)&&t.setAttribute("hidden",!0)})),this.$tabListItemLinks.forEach((function(e){var i=document.createElement("button");i.innerText=e.innerText,i.setAttribute("class",e.getAttribute("class")),i.setAttribute("role","tab"),i.setAttribute("id",e.getAttribute("id")),i.setAttribute("aria-controls",e.getAttribute("href").replace(/^#/,"")),i.setAttribute("tabindex","-1"),t.$newTabList.appendChild(i)})),this.$tabList.replaceWith(this.$newTabList),this.$tabListItemLinks=this.$module.querySelectorAll(".tna-tabs__list-item-link"),this.$tabListItemLinks.forEach((function(i,n){e&&i.getAttribute("aria-controls")==="".concat(e)||!e&&0===n?(i.classList.add("tna-tabs__list-item-link--selected"),i.setAttribute("aria-selected",!0),i.setAttribute("tabindex","0")):i.setAttribute("aria-selected",!1),i.addEventListener("keydown",(function(e){return t.handleItemLinkKeyDown(e)}),!0),i.addEventListener("click",(function(e){return t.handleItemLinkClick(e)}),!0)}))}}},{key:"handleItemLinkClick",value:function(t){t.preventDefault();var e=t.currentTarget.getAttribute("aria-controls");this.switchTab(e)}},{key:"handleItemLinkKeyDown",value:function(t){var e=t.currentTarget,i=!1;switch(t.key){case"ArrowLeft":this.setSelectedToPreviousTab(e),i=!0;break;case"ArrowRight":this.setSelectedToNextTab(e),i=!0;break;case"Home":this.switchTab(this.$tabListItemLinks[0].getAttribute("aria-controls")),i=!0;break;case"End":this.switchTab(this.$tabListItemLinks[this.$tabListItemLinks.length-1].getAttribute("aria-controls")),i=!0}i&&(t.stopPropagation(),t.preventDefault())}},{key:"setSelectedToNextTab",value:function(t){console.log("setSelectedToNextTab",t);var e,i=r(this.$tabListItemLinks).findIndex((function(e){return e.getAttribute("id")===t.getAttribute("id")}));e=i<this.$tabListItemLinks.length-1?i+1:0,console.log(i,e),this.switchTab(this.$tabListItemLinks[e].getAttribute("aria-controls"))}},{key:"setSelectedToPreviousTab",value:function(t){console.log("setSelectedToPreviousTab",t);var e,i=r(this.$tabListItemLinks).findIndex((function(e){return e.getAttribute("id")===t.getAttribute("id")}));e=i>=1?i-1:this.$tabListItemLinks.length-1,console.log(i,e),this.switchTab(this.$tabListItemLinks[e].getAttribute("aria-controls"))}},{key:"switchTab",value:function(t){this.$tabListItemLinks.forEach((function(e){e.getAttribute("aria-controls")===t?(e.classList.add("tna-tabs__list-item-link--selected"),e.setAttribute("aria-selected",!0),e.setAttribute("tabindex","0"),e.focus()):(e.classList.remove("tna-tabs__list-item-link--selected"),e.setAttribute("aria-selected",!1),e.setAttribute("tabindex","-1"))})),this.$tabItems.forEach((function(e){e.getAttribute("id")===t?(e.removeAttribute("hidden"),e.setAttribute("tabindex","0")):(e.setAttribute("hidden",!0),e.setAttribute("tabindex","-1"))})),this.sticky&&(history.replaceState?history.replaceState(null,null,"#".concat(t)):location.hash="#".concat(t))}}])&&s(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}()},948:(t,e,i)=>{i.d(e,{Z:()=>n});const n=function(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(t){return(t^crypto.getRandomValues(new Uint8Array(1))[0]&15>>t/4).toString(16)}))}}},e={};function i(n){var r=e[n];if(void 0!==r)return r.exports;var a=e[n]={exports:{}};return t[n](a,a.exports,i),a.exports}i.d=(t,e)=>{for(var n in e)i.o(e,n)&&!i.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),i.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};return(()=>{i.r(n),i.d(n,{Breadcrumbs:()=>t.Breadcrumbs,Header:()=>e.Header,Picture:()=>r.Picture,SensitiveImage:()=>a.SensitiveImage,Tabs:()=>s.Tabs,initAll:()=>l});var t=i(908),e=i(8),r=i(765),a=i(554),s=i(973),o=document.documentElement;o.classList.add("tna-template--js-enabled"),window.addEventListener("touchstart",(function t(){window.removeEventListener("touchstart",t),o.classList.add("tna-template--touched")})),window.addEventListener("keydown",(function(t){"Tab"===t.key&&(o.classList.add("tna-template--tabbed"),o.classList.remove("tna-template--clicked"))})),window.addEventListener("mousedown",(function(){o.classList.add("tna-template--clicked"),o.classList.remove("tna-template--tabbed")})),document.documentElement.classList.contains("tna-template--system-theme")&&(document.documentElement.classList.add(window.matchMedia("(prefers-color-scheme: dark)").matches?"tna-template--dark-theme":"tna-template--light-theme"),window.matchMedia("(prefers-contrast: more)").matches&&document.documentElement.classList.add("tna-template--high-contrast-theme"));var l=function(i){var n=(i=void 0!==i?i:{}).scope instanceof HTMLElement?i.scope:document,o=n.querySelector('[data-module="tna-breadcrumbs"]');o&&new t.Breadcrumbs(o).init();var l=n.querySelector('[data-module="tna-header"]');l&&new e.Header(l).init(),n.querySelectorAll('[data-module="tna-picture"]').forEach((function(t){new r.Picture(t).init()})),n.querySelectorAll('[data-module="tna-sensitive-image"]').forEach((function(t){new a.SensitiveImage(t).init()})),n.querySelectorAll('[data-module="tna-tabs"]').forEach((function(t){new s.Tabs(t).init()}))}})(),n})()));
2
2
  //# sourceMappingURL=all.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"all.js","mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,GAAIH,GACe,iBAAZC,QACdA,QAAqB,YAAID,IAEzBD,EAAkB,YAAIC,GACvB,CATD,CASGK,MAAM,I,mvBCPF,IAAMC,EAAW,WACtB,SAAAA,EAAYC,I,4FAASC,CAAA,KAAAF,GACnBG,KAAKF,QAAUA,EACfE,KAAKC,wBACHH,GAAWA,EAAQI,cAAc,6BACnCF,KAAKG,iBACHL,GACAE,KAAKC,yBACLH,EAAQI,cAAc,0BACxBF,KAAKI,aACHN,GACAE,KAAKC,yBACLD,KAAKG,kBACLL,EAAQO,iBAAiB,yBAC7B,C,QAiDC,O,EAjDAR,G,EAAA,EAAAS,IAAA,OAAAC,MAED,WAAO,IAAAC,EAAA,KACL,GACGR,KAAKF,SACLE,KAAKC,yBACLD,KAAKG,kBACLH,KAAKI,cAMNJ,KAAKI,aAAaK,OAAS,IAC1BT,KAAKF,QAAQY,UAAUC,SAAS,gCACjC,CACA,IAAMC,EAAW,mBAAHC,QAAsBC,EAAAA,EAAAA,MAE9BC,EAAcC,SAASC,cAAc,MAC3CF,EAAYL,UAAUQ,IACpB,wBACA,qCAEFH,EAAYI,MAAMC,QAAU,OAE5B,IAAMC,EAAgBL,SAASC,cAAc,UAC7CI,EAAcX,UAAUQ,IAAI,yBAC5BG,EAAcC,UACZ,sEACFD,EAAcE,aAAa,gBAAiB,SAC5CF,EAAcE,aAAa,gBAAiBX,GAC5CS,EAAcG,iBAAiB,SAAS,WACtChB,EAAKV,QAAQY,UAAUe,OAAO,8BAC9BV,EAAYU,SACZjB,EAAKP,wBAAwBsB,aAAa,WAAY,KACtDf,EAAKP,wBAAwByB,QAC7BlB,EAAKP,wBAAwBsB,aAAa,WAAY,KACxD,IAEAR,EAAYY,YAAYN,GAExBrB,KAAKG,iBAAiBoB,aAAa,KAAMX,GACzCZ,KAAKG,iBAAiByB,aACpBb,EACAf,KAAKI,aAAaJ,KAAKI,aAAaK,OAAS,GAAGoB,aAGlD7B,KAAKF,QAAQY,UAAUQ,IAAI,6BAC7B,CACF,M,oEAACrB,CAAA,CA/DqB,E,otBCAjB,IAAMiC,EAAM,WACjB,SAAAA,EAAYhC,I,4FAASC,CAAA,KAAA+B,GACnB9B,KAAKF,QAAUA,EACfE,KAAK+B,qBACHjC,GAAWA,EAAQI,cAAc,kCACnCF,KAAKgC,YACHlC,GAAWA,EAAQI,cAAc,2BACnCF,KAAKiC,OACHnC,GACAE,KAAKgC,aACLhC,KAAKgC,YAAY3B,iBAAiB,kBACpCL,KAAKkC,YAAa,EAClBlC,KAAKmC,IAAMC,OAAOC,WAAW,qBAC/B,C,QAgFC,O,EAhFAP,G,EAAA,EAAAxB,IAAA,OAAAC,MAED,WAAO,IAAAC,EAAA,KACL,GAAKR,KAAKF,SAAYE,KAAK+B,sBAAyB/B,KAAKgC,YAAzD,CAIA,IAAMpB,EAAW,oBAAHC,QAAuBC,EAAAA,EAAAA,MACrCd,KAAKgC,YAAYT,aAAa,KAAMX,GAEpCZ,KAAKsC,cAAgBtB,SAASC,cAAc,UAC5CjB,KAAKsC,cAAcC,UAAY,OAC/BvC,KAAKsC,cAAcf,aAAa,gBAAiBX,GACjDZ,KAAKsC,cAAcf,aAAa,gBAAiB,QACjDvB,KAAKsC,cAAc5B,UAAUQ,IAAI,wCAEjClB,KAAKwC,WAAaxB,SAASC,cAAc,OACzCjB,KAAKwC,WAAW9B,UAAUQ,IAAI,yBAE9BlB,KAAKsC,cAAcX,YAAY3B,KAAKwC,YACpCxC,KAAK+B,qBAAqBJ,YAAY3B,KAAKsC,eAE3CtC,KAAKyC,YAELzC,KAAKsC,cAAcd,iBAAiB,SAAS,kBAC3ChB,EAAKkC,wBAAwB,IAG3B,qBAAsB1C,KAAKmC,IAC7BnC,KAAKmC,IAAIX,iBAAiB,UAAU,kBAAMhB,EAAKiC,WAAW,IAE1DzC,KAAKmC,IAAIQ,aAAY,kBAAMnC,EAAKiC,WAAW,GA1B7C,CA4BF,GAAC,CAAAnC,IAAA,yBAAAC,MAED,WACEP,KAAKkC,YAAclC,KAAKkC,WACxBlC,KAAKyC,WACP,GAAC,CAAAnC,IAAA,YAAAC,MAED,WACE,GAAIP,KAAKmC,IAAIS,QACX,GAAI5C,KAAKkC,WAAY,CACnBlC,KAAKgC,YAAYtB,UAAUQ,IAAI,gCAC/BlB,KAAKgC,YAAYa,QAAS,EAC1B7C,KAAKgC,YAAYT,aAAa,cAAe,SAC7CvB,KAAKsC,cAAcf,aAAa,gBAAiB,QACjDvB,KAAKsC,cAAcf,aAAa,QAAS,cACzCvB,KAAKsC,cAAc5B,UAAUQ,IAC3B,gDAGF,IAAK,IAAI4B,EAAI,EAAGA,EAAI9C,KAAKiC,OAAOxB,OAAQqC,IACtC9C,KAAKiC,OAAOa,GAAGvB,aAAa,WAAY,IAE5C,KAAO,CACLvB,KAAKgC,YAAYtB,UAAUe,OAAO,gCAClCzB,KAAKgC,YAAYa,QAAS,EAC1B7C,KAAKgC,YAAYT,aAAa,cAAe,QAC7CvB,KAAKsC,cAAcf,aAAa,gBAAiB,SACjDvB,KAAKsC,cAAcf,aAAa,QAAS,aACzCvB,KAAKsC,cAAc5B,UAAUe,OAC3B,gDAGF,IAAK,IAAIqB,EAAI,EAAGA,EAAI9C,KAAKiC,OAAOxB,OAAQqC,IACtC9C,KAAKiC,OAAOa,GAAGvB,aAAa,WAAY,KAE5C,KACK,CACLvB,KAAKgC,YAAYtB,UAAUQ,IAAI,gCAC/BlB,KAAKgC,YAAYa,QAAS,EAC1B7C,KAAKgC,YAAYT,aAAa,cAAe,SAC7CvB,KAAKsC,cAAcf,aAAa,gBAAiB,QACjDvB,KAAKsC,cAAcf,aAAa,QAAS,cAEzC,IAAK,IAAIuB,EAAI,EAAGA,EAAI9C,KAAKiC,OAAOxB,OAAQqC,IACtC9C,KAAKiC,OAAOa,GAAGvB,aAAa,WAAY,IAE5C,CACF,M,oEAACO,CAAA,CA7FgB,E,utBCAZ,IAAMiB,EAAO,WAClB,SAAAA,EAAYjD,I,4FAASC,CAAA,KAAAgD,GACnB/C,KAAKF,QAAUA,EACfE,KAAKgD,cACHlD,GAAWA,EAAQI,cAAc,+BACnCF,KAAKiD,YACHnD,GAAWA,EAAQI,cAAc,4BACnCF,KAAKkD,kBAAmB,CAC1B,C,QA6CC,O,EA7CAH,G,EAAA,EAAAzC,IAAA,OAAAC,MAED,WAAO,IAAAC,EAAA,KACL,GAAKR,KAAKF,SAAYE,KAAKgD,eAAkBhD,KAAKiD,YAAlD,CAIA,IAAMrC,EAAW,eAAHC,QAAkBC,EAAAA,EAAAA,MAEhCd,KAAKmD,kBAAoBnC,SAASC,cAAc,UAChDjB,KAAKmD,kBAAkBzC,UAAUQ,IAC/B,iCACA,cAEFlB,KAAKmD,kBAAkB5B,aAAa,gBAAiBX,GACrDZ,KAAKmD,kBAAkB5B,aAAa,iBAAiB,GACrDvB,KAAKmD,kBAAkBZ,UAAY,kBACnCvC,KAAKmD,kBAAkB3B,iBAAiB,SAAS,kBAC/ChB,EAAK4C,wBAAwB,IAE/BpD,KAAKgD,cAAcrB,YAAY3B,KAAKmD,mBAEpCnD,KAAKiD,YAAY1B,aAAa,KAAMX,GACpCZ,KAAKiD,YAAY1B,aAAa,UAAU,EAlBxC,CAoBF,GAAC,CAAAjB,IAAA,yBAAAC,MAED,WACE,IAAM8C,EACJ,yCACFrD,KAAKkD,kBAAoBlD,KAAKkD,iBAC1BlD,KAAKkD,kBACPlD,KAAKmD,kBAAkBzC,UAAUQ,IAAImC,GACrCrD,KAAKmD,kBAAkB5B,aAAa,iBAAiB,GACrDvB,KAAKmD,kBAAkBZ,UAAY,mBACnCvC,KAAKiD,YAAYK,gBAAgB,YAIjCtD,KAAKmD,kBAAkBzC,UAAUe,OAAO4B,GACxCrD,KAAKmD,kBAAkB5B,aAAa,iBAAiB,GACrDvB,KAAKmD,kBAAkBZ,UAAY,kBACnCvC,KAAKiD,YAAY1B,aAAa,UAAU,GAG5C,M,oEAACwB,CAAA,CArDiB,E,itBCFb,IAAMQ,EAAc,WACzB,SAAAA,EAAYzD,I,4FAASC,CAAA,KAAAwD,GACnBvD,KAAKF,QAAUA,EACfE,KAAKwD,cACH1D,GAAWA,EAAQI,cAAc,iCACnCF,KAAKyD,OACH3D,GAAWA,EAAQI,cAAc,+BACnCF,KAAK0D,gBAAiB,CACxB,C,QAeC,O,EAfAH,G,EAAA,EAAAjD,IAAA,OAAAC,MAED,WAAO,IAAAC,EAAA,KACAR,KAAKF,SAAYE,KAAKwD,eAAkBxD,KAAKyD,QAGlDzD,KAAKwD,cAAchC,iBAAiB,UAAU,kBAC5ChB,EAAKmD,0BAA0B,GAEnC,GAAC,CAAArD,IAAA,2BAAAC,MAED,WACMP,KAAKwD,cAAcI,aAAa,SAClC5D,KAAKyD,OAAO/B,MAAM,CAAEmC,eAAe,EAAMC,cAAc,GAE3D,M,oEAACP,CAAA,CAvBwB,E,u7CCApB,IAAMQ,EAAI,WACf,SAAAA,EAAYjE,I,4FAASC,CAAA,KAAAgE,GACnB/D,KAAKF,QAAUA,EACfE,KAAKgE,SAAWlE,GAAWA,EAAQI,cAAc,mBACjDF,KAAKiE,kBACHnE,GACAE,KAAKgE,UACLlE,EAAQO,iBAAiB,6BAC3BL,KAAKkE,UAAYpE,GAAWA,EAAQO,iBAAiB,kBACvD,C,QA2MC,O,EA3MA0D,G,EAAA,EAAAzD,IAAA,OAAAC,MAED,WAAO,IAAAC,EAAA,KACL,GACGR,KAAKF,SACLE,KAAKgE,UACLhE,KAAKiE,mBACLjE,KAAKkE,WACNlE,KAAKiE,kBAAkBxD,SAAWT,KAAKkE,UAAUzD,OALnD,CAUAT,KAAKmE,OAASnE,KAAKF,QAAQY,UAAUC,SAAS,oBAE9C,IAAMyD,EAAiBhC,OAAOiC,SAASC,KAAKC,QAAQ,KAAM,IAE1DvE,KAAKwE,YAAcxD,SAASC,cAAc,OAC1CjB,KAAKwE,YAAYjD,aAAa,OAAQ,WACtCvB,KAAKwE,YAAYjD,aAAa,QAASvB,KAAKgE,SAASS,aAAa,UAElEzE,KAAKkE,UAAUQ,SAAQ,SAACC,EAAUC,GAChCD,EAASpD,aAAa,OAAQ,YAC9BoD,EAASpD,aACP,kBAAiB,GAAAV,OACd8D,EAASF,aAAa,MAAK,SAEhCE,EAASpD,aAAa,WAAY,MAE/B6C,GAAkBO,EAASF,aAAa,QAAUL,IACjDA,GAAkBQ,EAAQ,IAE5BD,EAASpD,aAAa,UAAU,EAEpC,IAEAvB,KAAKiE,kBAAkBS,SAAQ,SAACG,GAC9B,IAAMC,EAAqB9D,SAASC,cAAc,UAClD6D,EAAmBvC,UAAYsC,EAAiBtC,UAChDuC,EAAmBvD,aACjB,QACAsD,EAAiBJ,aAAa,UAEhCK,EAAmBvD,aAAa,OAAQ,OACxCuD,EAAmBvD,aACjB,KACAsD,EAAiBJ,aAAa,OAEhCK,EAAmBvD,aACjB,gBACAsD,EAAiBJ,aAAa,QAAQF,QAAQ,KAAM,KAEtDO,EAAmBvD,aAAa,WAAY,MAC5Cf,EAAKgE,YAAY7C,YAAYmD,EAC/B,IAEA9E,KAAKgE,SAASe,YAAY/E,KAAKwE,aAE/BxE,KAAKiE,kBAAoBjE,KAAKF,QAAQO,iBACpC,6BAGFL,KAAKiE,kBAAkBS,SAAQ,SAACG,EAAkBD,GAE7CR,GACCS,EAAiBJ,aAAa,mBAAgB,GAAA5D,OACzCuD,KACLA,GAA4B,IAAVQ,GAEpBC,EAAiBnE,UAAUQ,IAAI,sCAC/B2D,EAAiBtD,aAAa,iBAAiB,GAC/CsD,EAAiBtD,aAAa,WAAY,MAE1CsD,EAAiBtD,aAAa,iBAAiB,GAGjDsD,EAAiBrD,iBACf,WACA,SAACwD,GAAC,OAAKxE,EAAKyE,sBAAsBD,EAAE,IACpC,GAEFH,EAAiBrD,iBACf,SACA,SAACwD,GAAC,OAAKxE,EAAK0E,oBAAoBF,EAAE,IAClC,EAEJ,GA3EA,CA4EF,GAAC,CAAA1E,IAAA,sBAAAC,MAED,SAAoB4E,GAClBA,EAAmBC,iBACnB,IAAMC,EACJF,EAAmBG,cAAcb,aAAa,iBAEhDzE,KAAKuF,UAAUF,EACjB,GAAC,CAAA/E,IAAA,wBAAAC,MAED,SAAsBiF,GACpB,IAAMH,EAAaG,EAAqBF,cACpCG,GAAqB,EAEzB,OAAQD,EAAqBlF,KAC3B,IAAK,YACHN,KAAK0F,yBAAyBL,GAC9BI,GAAqB,EACrB,MAEF,IAAK,aACHzF,KAAK2F,qBAAqBN,GAC1BI,GAAqB,EACrB,MAEF,IAAK,OACHzF,KAAKuF,UAAUvF,KAAKiE,kBAAkB,GAAGQ,aAAa,kBACtDgB,GAAqB,EACrB,MAEF,IAAK,MACHzF,KAAKuF,UACHvF,KAAKiE,kBACHjE,KAAKiE,kBAAkBxD,OAAS,GAChCgE,aAAa,kBAEjBgB,GAAqB,EAOrBA,IACFD,EAAqBI,kBACrBJ,EAAqBJ,iBAEzB,GAAC,CAAA9E,IAAA,uBAAAC,MAED,SAAqB8E,GACnBQ,QAAQC,IAAI,uBAAwBT,GACpC,IAIIU,EAJEC,EAAeC,EAAIjG,KAAKiE,mBAAmBiC,WAC/C,SAACrB,GAAgB,OACfA,EAAiBJ,aAAa,QAAUY,EAAWZ,aAAa,KAAK,IAIvEsB,EADEC,EAAehG,KAAKiE,kBAAkBxD,OAAS,EACtCuF,EAAe,EAEf,EAEbH,QAAQC,IAAIE,EAAcD,GAC1B/F,KAAKuF,UACHvF,KAAKiE,kBAAkB8B,GAAUtB,aAAa,iBAElD,GAAC,CAAAnE,IAAA,2BAAAC,MAED,SAAyB8E,GACvBQ,QAAQC,IAAI,2BAA4BT,GACxC,IAIIU,EAJEC,EAAeC,EAAIjG,KAAKiE,mBAAmBiC,WAC/C,SAACrB,GAAgB,OACfA,EAAiBJ,aAAa,QAAUY,EAAWZ,aAAa,KAAK,IAIvEsB,EADEC,GAAgB,EACPA,EAAe,EAEfhG,KAAKiE,kBAAkBxD,OAAS,EAE7CoF,QAAQC,IAAIE,EAAcD,GAC1B/F,KAAKuF,UACHvF,KAAKiE,kBAAkB8B,GAAUtB,aAAa,iBAElD,GAAC,CAAAnE,IAAA,YAAAC,MAED,SAAU4F,GACRnG,KAAKiE,kBAAkBS,SAAQ,SAACG,GAC1BA,EAAiBJ,aAAa,mBAAqB0B,GACrDtB,EAAiBnE,UAAUQ,IAAI,sCAC/B2D,EAAiBtD,aAAa,iBAAiB,GAC/CsD,EAAiBtD,aAAa,WAAY,KAC1CsD,EAAiBnD,UAEjBmD,EAAiBnE,UAAUe,OAAO,sCAClCoD,EAAiBtD,aAAa,iBAAiB,GAC/CsD,EAAiBtD,aAAa,WAAY,MAE9C,IAEAvB,KAAKkE,UAAUQ,SAAQ,SAACC,GAClBA,EAASF,aAAa,QAAU0B,GAClCxB,EAASrB,gBAAgB,UACzBqB,EAASpD,aAAa,WAAY,OAElCoD,EAASpD,aAAa,UAAU,GAChCoD,EAASpD,aAAa,WAAY,MAEtC,IAEIvB,KAAKmE,SACHiC,QAAQC,aACVD,QAAQC,aAAa,KAAM,KAAM,IAAFxF,OAAMsF,IAErC9B,SAASC,KAAO,IAAHzD,OAAOsF,GAG1B,M,oEAACpC,CAAA,CApNc,E,iCCQjB,QARe,WAAH,OACT,CAAC,MAAQ,KAAO,KAAO,KAAO,MAAMQ,QAAQ,UAAU,SAAC+B,GAAC,OAErDA,EACCC,OAAOC,gBAAgB,IAAIC,WAAW,IAAI,GAAM,IAAOH,EAAI,GAC5DI,SAAS,GAAG,GACf,C,GCLCC,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAatH,QAGrB,IAAIC,EAASkH,EAAyBE,GAAY,CAGjDrH,QAAS,CAAC,GAOX,OAHAwH,EAAoBH,GAAUpH,EAAQA,EAAOD,QAASoH,GAG/CnH,EAAOD,OACf,CCrBAoH,EAAoBK,EAAI,CAACzH,EAAS0H,KACjC,IAAI,IAAI5G,KAAO4G,EACXN,EAAoBO,EAAED,EAAY5G,KAASsG,EAAoBO,EAAE3H,EAASc,IAC5E8G,OAAOC,eAAe7H,EAASc,EAAK,CAAEgH,YAAY,EAAMC,IAAKL,EAAW5G,IAE1E,ECNDsG,EAAoBO,EAAI,CAACK,EAAKC,IAAUL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,GCClFb,EAAoBiB,EAAKrI,IACH,oBAAXsI,QAA0BA,OAAOC,aAC1CX,OAAOC,eAAe7H,EAASsI,OAAOC,YAAa,CAAExH,MAAO,WAE7D6G,OAAOC,eAAe7H,EAAS,aAAc,CAAEe,OAAO,GAAO,E,8NCCxDyH,EAAQhH,SAASiH,gBAEvBD,EAAMtH,UAAUQ,IAAI,4BAmBpBkB,OAAOZ,iBAAiB,cAjBH,SAAf0G,IACJ9F,OAAO+F,oBAAoB,aAAcD,GACzCF,EAAMtH,UAAUQ,IAAI,wBACtB,IAeAkB,OAAOZ,iBAAiB,WAbN,SAACwD,GACH,QAAVA,EAAE1E,MACJ0H,EAAMtH,UAAUQ,IAAI,wBACpB8G,EAAMtH,UAAUe,OAAO,yBAE3B,IASAW,OAAOZ,iBAAiB,aAPJ,WAClBwG,EAAMtH,UAAUQ,IAAI,yBACpB8G,EAAMtH,UAAUe,OAAO,uBACzB,IAMIT,SAASiH,gBAAgBvH,UAAUC,SAAS,gCAC9CK,SAASiH,gBAAgBvH,UAAUQ,IACjCkB,OAAOC,WAAW,gCAAgCO,QAC9C,2BACA,6BAEFR,OAAOC,WAAW,4BAA4BO,SAChD5B,SAASiH,gBAAgBvH,UAAUQ,IAAI,sCAI3C,IAAMkH,EAAU,SAACC,GAEf,IAAMC,GADND,OAA6B,IAAZA,EAA0BA,EAAU,CAAC,GAE5CE,iBAAiBC,YAAcH,EAAQE,MAAQvH,SAEnDZ,EAAekI,EAAOpI,cAAc,mCACtCE,GACF,IAAIP,EAAAA,YAAYO,GAAcqI,OAGhC,IAAMC,EAAUJ,EAAOpI,cAAc,8BACjCwI,GACF,IAAI5G,EAAAA,OAAO4G,GAASD,OAGJH,EAAOjI,iBAAiB,+BAChCqE,SAAQ,SAACiE,GACjB,IAAI5F,EAAAA,QAAQ4F,GAAUF,MACxB,IAEyBH,EAAOjI,iBAC9B,uCAEeqE,SAAQ,SAACkE,GACxB,IAAIrF,EAAAA,eAAeqF,GAAiBH,MACtC,IAEcH,EAAOjI,iBAAiB,4BAChCqE,SAAQ,SAACmE,GACb,IAAI9E,EAAAA,KAAK8E,GAAYJ,MACvB,GACF,C","sources":["webpack://TNAFrontend/webpack/universalModuleDefinition","webpack://TNAFrontend/./src/nationalarchives/components/breadcrumbs/breadcrumbs.mjs","webpack://TNAFrontend/./src/nationalarchives/components/header/header.mjs","webpack://TNAFrontend/./src/nationalarchives/components/picture/picture.mjs","webpack://TNAFrontend/./src/nationalarchives/components/sensitive-image/sensitive-image.mjs","webpack://TNAFrontend/./src/nationalarchives/components/tabs/tabs.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 ","import uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Breadcrumbs {\n constructor($module) {\n this.$module = $module;\n this.$breadcrumbsListWrapper =\n $module && $module.querySelector(\".tna-breadcrumbs__wrapper\");\n this.$breadcrumbsList =\n $module &&\n this.$breadcrumbsListWrapper &&\n $module.querySelector(\".tna-breadcrumbs__list\");\n this.$breadcrumbs =\n $module &&\n this.$breadcrumbsListWrapper &&\n this.$breadcrumbsList &&\n $module.querySelectorAll(\".tna-breadcrumbs__item\");\n }\n\n init() {\n if (\n !this.$module ||\n !this.$breadcrumbsListWrapper ||\n !this.$breadcrumbsList ||\n !this.$breadcrumbs\n ) {\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>&hellip;\";\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.$breadcrumbsListWrapper.setAttribute(\"tabindex\", \"0\");\n this.$breadcrumbsListWrapper.focus();\n this.$breadcrumbsListWrapper.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 uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Header {\n constructor($module) {\n this.$module = $module;\n this.$toggleButtonWrapper =\n $module && $module.querySelector(\".tna-header__navigation-toggle\");\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: 768px)\");\n }\n\n init() {\n if (!this.$module || !this.$toggleButtonWrapper || !this.$navigation) {\n return;\n }\n\n const uniqueId = `tna-menu-content-${uuidv4()}`;\n this.$navigation.setAttribute(\"id\", uniqueId);\n\n this.$toggleButton = document.createElement(\"button\");\n this.$toggleButton.innerText = \"Menu\";\n this.$toggleButton.setAttribute(\"aria-controls\", uniqueId);\n this.$toggleButton.setAttribute(\"aria-haspopup\", \"true\");\n this.$toggleButton.classList.add(\"tna-header__navigation-toggle-button\");\n\n this.$hamburger = document.createElement(\"div\");\n this.$hamburger.classList.add(\"tna-header__hamburger\");\n\n this.$toggleButton.appendChild(this.$hamburger);\n this.$toggleButtonWrapper.appendChild(this.$toggleButton);\n\n this.syncState();\n\n this.$toggleButton.addEventListener(\"click\", () =>\n this.handleToggleNavigation(),\n );\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\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.$navigation.classList.add(\"tna-header__navigation--open\");\n this.$navigation.hidden = false;\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(\n \"tna-header__navigation-toggle-button--opened\",\n );\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\n } else {\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-toggle-button--opened\",\n );\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"-1\");\n }\n }\n } else {\n this.$navigation.classList.add(\"tna-header__navigation--open\");\n this.$navigation.hidden = false;\n this.$navigation.setAttribute(\"aria-hidden\", \"false\");\n this.$toggleButton.setAttribute(\"aria-expanded\", \"true\");\n this.$toggleButton.setAttribute(\"title\", \"Close menu\");\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\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 this.$transcript =\n $module && $module.querySelector(\".tna-picture__transcript\");\n this.transcriptOpened = false;\n }\n\n init() {\n if (!this.$module || !this.$imageWrapper || !this.$transcript) {\n return;\n }\n\n const uniqueId = `tna-picture-${uuidv4()}`;\n\n this.$transcriptToggle = document.createElement(\"button\");\n this.$transcriptToggle.classList.add(\n \"tna-picture__toggle-transcript\",\n \"tna-button\",\n );\n this.$transcriptToggle.setAttribute(\"aria-controls\", uniqueId);\n this.$transcriptToggle.setAttribute(\"aria-expanded\", false);\n this.$transcriptToggle.innerText = \"Open transcript\";\n this.$transcriptToggle.addEventListener(\"click\", () =>\n this.handleToggleTranscript(),\n );\n this.$imageWrapper.appendChild(this.$transcriptToggle);\n\n this.$transcript.setAttribute(\"id\", uniqueId);\n this.$transcript.setAttribute(\"hidden\", true);\n // this.$transcript.setAttribute(\"tabindex\", \"-1\");\n }\n\n handleToggleTranscript() {\n const transcriptToggleOpenedClass =\n \"tna-picture__toggle-transcript--opened\";\n this.transcriptOpened = !this.transcriptOpened;\n if (this.transcriptOpened) {\n this.$transcriptToggle.classList.add(transcriptToggleOpenedClass);\n this.$transcriptToggle.setAttribute(\"aria-expanded\", true);\n this.$transcriptToggle.innerText = \"Close transcript\";\n this.$transcript.removeAttribute(\"hidden\");\n // this.$transcript.setAttribute(\"tabindex\", \"0\");\n // this.$transcript.focus();\n } else {\n this.$transcriptToggle.classList.remove(transcriptToggleOpenedClass);\n this.$transcriptToggle.setAttribute(\"aria-expanded\", false);\n this.$transcriptToggle.innerText = \"Open transcript\";\n this.$transcript.setAttribute(\"hidden\", true);\n // this.$transcript.setAttribute(\"tabindex\", \"-1\");\n }\n }\n}\n","export class SensitiveImage {\n constructor($module) {\n this.$module = $module;\n this.$imageDetails =\n $module && $module.querySelector(\".tna-sensitive-image__details\");\n this.$image =\n $module && $module.querySelector(\".tna-sensitive-image__image\");\n this.imageIsVisible = false;\n }\n\n init() {\n if (!this.$module || !this.$imageDetails || !this.$image) {\n return;\n }\n this.$imageDetails.addEventListener(\"toggle\", () =>\n this.handleImageDetailsToggle(),\n );\n }\n\n handleImageDetailsToggle() {\n if (this.$imageDetails.hasAttribute(\"open\")) {\n this.$image.focus({ preventScroll: true, focusVisible: true });\n }\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 $module.querySelectorAll(\".tna-tabs__list-item-link\");\n this.$tabItems = $module && $module.querySelectorAll(\".tna-tabs__item\");\n }\n\n init() {\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.sticky = this.$module.classList.contains(\"tna-tabs--sticky\");\n\n const startingTarget = window.location.hash.replace(/^#/, \"\");\n\n this.$newTabList = document.createElement(\"div\");\n this.$newTabList.setAttribute(\"role\", \"tablist\");\n this.$newTabList.setAttribute(\"class\", this.$tabList.getAttribute(\"class\"));\n\n this.$tabItems.forEach(($tabItem, index) => {\n $tabItem.setAttribute(\"role\", \"tabpanel\");\n $tabItem.setAttribute(\n \"aria-labelledby\",\n `${$tabItem.getAttribute(\"id\")}-tab`,\n );\n $tabItem.setAttribute(\"tabindex\", \"0\");\n if (\n (startingTarget && $tabItem.getAttribute(\"id\") !== startingTarget) ||\n (!startingTarget && index > 0)\n ) {\n $tabItem.setAttribute(\"hidden\", true);\n }\n });\n\n this.$tabListItemLinks.forEach(($tabListItemLink) => {\n const $replacementButton = document.createElement(\"button\");\n $replacementButton.innerText = $tabListItemLink.innerText;\n $replacementButton.setAttribute(\n \"class\",\n $tabListItemLink.getAttribute(\"class\"),\n );\n $replacementButton.setAttribute(\"role\", \"tab\");\n $replacementButton.setAttribute(\n \"id\",\n $tabListItemLink.getAttribute(\"id\"),\n );\n $replacementButton.setAttribute(\n \"aria-controls\",\n $tabListItemLink.getAttribute(\"href\").replace(/^#/, \"\"),\n );\n $replacementButton.setAttribute(\"tabindex\", \"-1\");\n this.$newTabList.appendChild($replacementButton);\n });\n\n this.$tabList.replaceWith(this.$newTabList);\n\n this.$tabListItemLinks = this.$module.querySelectorAll(\n \".tna-tabs__list-item-link\",\n );\n\n this.$tabListItemLinks.forEach(($tabListItemLink, index) => {\n if (\n (startingTarget &&\n $tabListItemLink.getAttribute(\"aria-controls\") ===\n `${startingTarget}`) ||\n (!startingTarget && index === 0)\n ) {\n $tabListItemLink.classList.add(\"tna-tabs__list-item-link--selected\");\n $tabListItemLink.setAttribute(\"aria-selected\", true);\n $tabListItemLink.setAttribute(\"tabindex\", \"0\");\n } else {\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n }\n\n $tabListItemLink.addEventListener(\n \"keydown\",\n (e) => this.handleItemLinkKeyDown(e),\n true,\n );\n $tabListItemLink.addEventListener(\n \"click\",\n (e) => this.handleItemLinkClick(e),\n true,\n );\n });\n }\n\n handleItemLinkClick(itemLinkClickEvent) {\n itemLinkClickEvent.preventDefault();\n const targetItem =\n itemLinkClickEvent.currentTarget.getAttribute(\"aria-controls\");\n\n this.switchTab(targetItem);\n }\n\n handleItemLinkKeyDown(itemLinkKeyDownEvent) {\n const targetItem = itemLinkKeyDownEvent.currentTarget;\n let overwriteKeyAction = false;\n\n switch (itemLinkKeyDownEvent.key) {\n case \"ArrowLeft\":\n this.setSelectedToPreviousTab(targetItem);\n overwriteKeyAction = true;\n break;\n\n case \"ArrowRight\":\n this.setSelectedToNextTab(targetItem);\n overwriteKeyAction = true;\n break;\n\n case \"Home\":\n this.switchTab(this.$tabListItemLinks[0].getAttribute(\"aria-controls\"));\n overwriteKeyAction = true;\n break;\n\n case \"End\":\n this.switchTab(\n this.$tabListItemLinks[\n this.$tabListItemLinks.length - 1\n ].getAttribute(\"aria-controls\"),\n );\n overwriteKeyAction = true;\n break;\n\n default:\n break;\n }\n\n if (overwriteKeyAction) {\n itemLinkKeyDownEvent.stopPropagation();\n itemLinkKeyDownEvent.preventDefault();\n }\n }\n\n setSelectedToNextTab(targetItem) {\n console.log(\"setSelectedToNextTab\", targetItem);\n const currentIndex = [...this.$tabListItemLinks].findIndex(\n ($tabListItemLink) =>\n $tabListItemLink.getAttribute(\"id\") === targetItem.getAttribute(\"id\"),\n );\n let newIndex;\n if (currentIndex < this.$tabListItemLinks.length - 1) {\n newIndex = currentIndex + 1;\n } else {\n newIndex = 0;\n }\n console.log(currentIndex, newIndex);\n this.switchTab(\n this.$tabListItemLinks[newIndex].getAttribute(\"aria-controls\"),\n );\n }\n\n setSelectedToPreviousTab(targetItem) {\n console.log(\"setSelectedToPreviousTab\", targetItem);\n const currentIndex = [...this.$tabListItemLinks].findIndex(\n ($tabListItemLink) =>\n $tabListItemLink.getAttribute(\"id\") === targetItem.getAttribute(\"id\"),\n );\n let newIndex;\n if (currentIndex >= 1) {\n newIndex = currentIndex - 1;\n } else {\n newIndex = this.$tabListItemLinks.length - 1;\n }\n console.log(currentIndex, newIndex);\n this.switchTab(\n this.$tabListItemLinks[newIndex].getAttribute(\"aria-controls\"),\n );\n }\n\n switchTab(targetId) {\n this.$tabListItemLinks.forEach(($tabListItemLink) => {\n if ($tabListItemLink.getAttribute(\"aria-controls\") === targetId) {\n $tabListItemLink.classList.add(\"tna-tabs__list-item-link--selected\");\n $tabListItemLink.setAttribute(\"aria-selected\", true);\n $tabListItemLink.setAttribute(\"tabindex\", \"0\");\n $tabListItemLink.focus();\n } else {\n $tabListItemLink.classList.remove(\"tna-tabs__list-item-link--selected\");\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n $tabListItemLink.setAttribute(\"tabindex\", \"-1\");\n }\n });\n\n this.$tabItems.forEach(($tabItem) => {\n if ($tabItem.getAttribute(\"id\") === targetId) {\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 if (this.sticky) {\n if (history.replaceState) {\n history.replaceState(null, null, `#${targetId}`);\n } else {\n location.hash = `#${targetId}`;\n }\n }\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 { Breadcrumbs } from \"./components/breadcrumbs/breadcrumbs.mjs\";\nimport { Header } from \"./components/header/header.mjs\";\nimport { Picture } from \"./components/picture/picture.mjs\";\nimport { SensitiveImage } from \"./components/sensitive-image/sensitive-image.mjs\";\nimport { Tabs } from \"./components/tabs/tabs.mjs\";\n\nconst $body = document.documentElement;\n\n$body.classList.add(\"tna-template--js-enabled\");\n\nconst onFirstTouch = () => {\n window.removeEventListener(\"touchstart\", onFirstTouch);\n $body.classList.add(\"tna-template--touched\");\n};\n\nconst onKeyDown = (e) => {\n if (e.key === \"Tab\") {\n $body.classList.add(\"tna-template--tabbed\");\n $body.classList.remove(\"tna-template--clicked\");\n }\n};\n\nconst onMouseDown = () => {\n $body.classList.add(\"tna-template--clicked\");\n $body.classList.remove(\"tna-template--tabbed\");\n};\n\nwindow.addEventListener(\"touchstart\", onFirstTouch);\nwindow.addEventListener(\"keydown\", onKeyDown);\nwindow.addEventListener(\"mousedown\", onMouseDown);\n\nif (document.documentElement.classList.contains(\"tna-template--system-theme\")) {\n document.documentElement.classList.add(\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"tna-template--dark-theme\"\n : \"tna-template--light-theme\",\n );\n if (window.matchMedia(\"(prefers-contrast: more)\").matches) {\n document.documentElement.classList.add(\"tna-template--high-contrast-theme\");\n }\n}\n\nconst initAll = (options) => {\n options = typeof options !== \"undefined\" ? options : {};\n const $scope =\n options.scope instanceof HTMLElement ? options.scope : document;\n\n const $breadcrumbs = $scope.querySelector('[data-module=\"tna-breadcrumbs\"]');\n if ($breadcrumbs) {\n new Breadcrumbs($breadcrumbs).init();\n }\n\n const $header = $scope.querySelector('[data-module=\"tna-header\"]');\n if ($header) {\n new Header($header).init();\n }\n\n const $pictures = $scope.querySelectorAll('[data-module=\"tna-picture\"]');\n $pictures.forEach(($picture) => {\n new Picture($picture).init();\n });\n\n const $sensitiveImages = $scope.querySelectorAll(\n '[data-module=\"tna-sensitive-image\"]',\n );\n $sensitiveImages.forEach(($sensitiveImage) => {\n new SensitiveImage($sensitiveImage).init();\n });\n\n const $tabs = $scope.querySelectorAll('[data-module=\"tna-tabs\"]');\n $tabs.forEach(($tabModule) => {\n new Tabs($tabModule).init();\n });\n};\n\nexport { initAll, Breadcrumbs, Header, Picture, SensitiveImage, Tabs };\n"],"names":["root","factory","exports","module","define","amd","self","Breadcrumbs","$module","_classCallCheck","this","$breadcrumbsListWrapper","querySelector","$breadcrumbsList","$breadcrumbs","querySelectorAll","key","value","_this","length","classList","contains","uniqueId","concat","uuidv4","$expandable","document","createElement","add","style","display","$expandButton","innerHTML","setAttribute","addEventListener","remove","focus","appendChild","insertBefore","nextSibling","Header","$toggleButtonWrapper","$navigation","$links","menuOpened","mql","window","matchMedia","$toggleButton","innerText","$hamburger","syncState","handleToggleNavigation","addListener","matches","hidden","i","Picture","$imageWrapper","$transcript","transcriptOpened","$transcriptToggle","handleToggleTranscript","transcriptToggleOpenedClass","removeAttribute","SensitiveImage","$imageDetails","$image","imageIsVisible","handleImageDetailsToggle","hasAttribute","preventScroll","focusVisible","Tabs","$tabList","$tabListItemLinks","$tabItems","sticky","startingTarget","location","hash","replace","$newTabList","getAttribute","forEach","$tabItem","index","$tabListItemLink","$replacementButton","replaceWith","e","handleItemLinkKeyDown","handleItemLinkClick","itemLinkClickEvent","preventDefault","targetItem","currentTarget","switchTab","itemLinkKeyDownEvent","overwriteKeyAction","setSelectedToPreviousTab","setSelectedToNextTab","stopPropagation","console","log","newIndex","currentIndex","_toConsumableArray","findIndex","targetId","history","replaceState","c","crypto","getRandomValues","Uint8Array","toString","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","d","definition","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","$body","documentElement","onFirstTouch","removeEventListener","initAll","options","$scope","scope","HTMLElement","init","$header","$picture","$sensitiveImage","$tabModule"],"sourceRoot":""}
1
+ {"version":3,"file":"all.js","mappings":"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","sources":["webpack://TNAFrontend/webpack/universalModuleDefinition","webpack://TNAFrontend/./src/nationalarchives/components/breadcrumbs/breadcrumbs.mjs","webpack://TNAFrontend/./src/nationalarchives/components/header/header.mjs","webpack://TNAFrontend/./src/nationalarchives/components/picture/picture.mjs","webpack://TNAFrontend/./src/nationalarchives/components/sensitive-image/sensitive-image.mjs","webpack://TNAFrontend/./src/nationalarchives/components/tabs/tabs.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 ","import uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Breadcrumbs {\n constructor($module) {\n this.$module = $module;\n this.$breadcrumbsListWrapper =\n $module && $module.querySelector(\".tna-breadcrumbs__wrapper\");\n this.$breadcrumbsList =\n $module &&\n this.$breadcrumbsListWrapper &&\n $module.querySelector(\".tna-breadcrumbs__list\");\n this.$breadcrumbs =\n $module &&\n this.$breadcrumbsListWrapper &&\n this.$breadcrumbsList &&\n $module.querySelectorAll(\".tna-breadcrumbs__item\");\n }\n\n init() {\n if (\n !this.$module ||\n !this.$breadcrumbsListWrapper ||\n !this.$breadcrumbsList ||\n !this.$breadcrumbs\n ) {\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>&hellip;\";\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.$breadcrumbsListWrapper.setAttribute(\"tabindex\", \"0\");\n this.$breadcrumbsListWrapper.focus();\n this.$breadcrumbsListWrapper.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 uuidv4 from \"../../lib/uuid.mjs\";\n\nexport class Header {\n constructor($module) {\n this.$module = $module;\n this.$toggleButtonWrapper =\n $module && $module.querySelector(\".tna-header__navigation-toggle\");\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: 768px)\");\n }\n\n init() {\n if (!this.$module || !this.$toggleButtonWrapper || !this.$navigation) {\n return;\n }\n\n const uniqueId = `tna-menu-content-${uuidv4()}`;\n this.$navigation.setAttribute(\"id\", uniqueId);\n\n this.$toggleButton = document.createElement(\"button\");\n this.$toggleButton.innerText = \"Menu\";\n this.$toggleButton.setAttribute(\"aria-controls\", uniqueId);\n this.$toggleButton.setAttribute(\"aria-haspopup\", \"true\");\n this.$toggleButton.classList.add(\"tna-header__navigation-toggle-button\");\n\n this.$hamburger = document.createElement(\"div\");\n this.$hamburger.classList.add(\"tna-header__hamburger\");\n\n this.$toggleButton.appendChild(this.$hamburger);\n this.$toggleButtonWrapper.appendChild(this.$toggleButton);\n\n this.syncState();\n\n this.$toggleButton.addEventListener(\"click\", () =>\n this.handleToggleNavigation(),\n );\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\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.$navigation.classList.add(\"tna-header__navigation--open\");\n this.$navigation.hidden = false;\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(\n \"tna-header__navigation-toggle-button--opened\",\n );\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\n } else {\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-toggle-button--opened\",\n );\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"-1\");\n }\n }\n } else {\n this.$navigation.classList.add(\"tna-header__navigation--open\");\n this.$navigation.hidden = false;\n this.$navigation.setAttribute(\"aria-hidden\", \"false\");\n this.$toggleButton.setAttribute(\"aria-expanded\", \"true\");\n this.$toggleButton.setAttribute(\"title\", \"Close menu\");\n\n for (let i = 0; i < this.$links.length; i++) {\n this.$links[i].setAttribute(\"tabindex\", \"0\");\n }\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 this.$transcript =\n $module && $module.querySelector(\".tna-picture__transcript\");\n this.transcriptOpened = false;\n }\n\n init() {\n if (!this.$module || !this.$imageWrapper || !this.$transcript) {\n return;\n }\n\n const uniqueId = `tna-picture-${uuidv4()}`;\n\n this.$transcriptToggle = document.createElement(\"button\");\n this.$transcriptToggle.classList.add(\n \"tna-picture__toggle-transcript\",\n \"tna-button\",\n \"tna-button--accent\",\n \"tna-button--solid-hover\",\n );\n this.$transcriptToggle.setAttribute(\"aria-controls\", uniqueId);\n this.$transcriptToggle.setAttribute(\"aria-expanded\", false);\n this.$transcriptToggle.innerText = \"Open transcript\";\n this.$transcriptToggle.addEventListener(\"click\", () =>\n this.handleToggleTranscript(),\n );\n this.$imageWrapper.appendChild(this.$transcriptToggle);\n\n this.$transcript.setAttribute(\"id\", uniqueId);\n this.$transcript.setAttribute(\"hidden\", true);\n // this.$transcript.setAttribute(\"tabindex\", \"-1\");\n }\n\n handleToggleTranscript() {\n const transcriptToggleOpenedClass =\n \"tna-picture__toggle-transcript--opened\";\n this.transcriptOpened = !this.transcriptOpened;\n if (this.transcriptOpened) {\n this.$transcriptToggle.classList.add(transcriptToggleOpenedClass);\n this.$transcriptToggle.setAttribute(\"aria-expanded\", true);\n this.$transcriptToggle.innerText = \"Close transcript\";\n this.$transcript.removeAttribute(\"hidden\");\n // this.$transcript.setAttribute(\"tabindex\", \"0\");\n // this.$transcript.focus();\n } else {\n this.$transcriptToggle.classList.remove(transcriptToggleOpenedClass);\n this.$transcriptToggle.setAttribute(\"aria-expanded\", false);\n this.$transcriptToggle.innerText = \"Open transcript\";\n this.$transcript.setAttribute(\"hidden\", true);\n // this.$transcript.setAttribute(\"tabindex\", \"-1\");\n }\n }\n}\n","export class SensitiveImage {\n constructor($module) {\n this.$module = $module;\n this.$imageDetails =\n $module && $module.querySelector(\".tna-sensitive-image__details\");\n this.$image =\n $module && $module.querySelector(\".tna-sensitive-image__image\");\n this.imageIsVisible = false;\n }\n\n init() {\n if (!this.$module || !this.$imageDetails || !this.$image) {\n return;\n }\n this.$imageDetails.addEventListener(\"toggle\", () =>\n this.handleImageDetailsToggle(),\n );\n }\n\n handleImageDetailsToggle() {\n if (this.$imageDetails.hasAttribute(\"open\")) {\n this.$image.focus({ preventScroll: true, focusVisible: true });\n }\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 $module.querySelectorAll(\".tna-tabs__list-item-link\");\n this.$tabItems = $module && $module.querySelectorAll(\".tna-tabs__item\");\n }\n\n init() {\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.sticky = this.$module.classList.contains(\"tna-tabs--sticky\");\n\n const startingTarget = window.location.hash.replace(/^#/, \"\");\n\n this.$newTabList = document.createElement(\"div\");\n this.$newTabList.setAttribute(\"role\", \"tablist\");\n this.$newTabList.setAttribute(\"class\", this.$tabList.getAttribute(\"class\"));\n\n this.$tabItems.forEach(($tabItem, index) => {\n $tabItem.setAttribute(\"role\", \"tabpanel\");\n $tabItem.setAttribute(\n \"aria-labelledby\",\n `${$tabItem.getAttribute(\"id\")}-tab`,\n );\n $tabItem.setAttribute(\"tabindex\", \"0\");\n if (\n (startingTarget && $tabItem.getAttribute(\"id\") !== startingTarget) ||\n (!startingTarget && index > 0)\n ) {\n $tabItem.setAttribute(\"hidden\", true);\n }\n });\n\n this.$tabListItemLinks.forEach(($tabListItemLink) => {\n const $replacementButton = document.createElement(\"button\");\n $replacementButton.innerText = $tabListItemLink.innerText;\n $replacementButton.setAttribute(\n \"class\",\n $tabListItemLink.getAttribute(\"class\"),\n );\n $replacementButton.setAttribute(\"role\", \"tab\");\n $replacementButton.setAttribute(\n \"id\",\n $tabListItemLink.getAttribute(\"id\"),\n );\n $replacementButton.setAttribute(\n \"aria-controls\",\n $tabListItemLink.getAttribute(\"href\").replace(/^#/, \"\"),\n );\n $replacementButton.setAttribute(\"tabindex\", \"-1\");\n this.$newTabList.appendChild($replacementButton);\n });\n\n this.$tabList.replaceWith(this.$newTabList);\n\n this.$tabListItemLinks = this.$module.querySelectorAll(\n \".tna-tabs__list-item-link\",\n );\n\n this.$tabListItemLinks.forEach(($tabListItemLink, index) => {\n if (\n (startingTarget &&\n $tabListItemLink.getAttribute(\"aria-controls\") ===\n `${startingTarget}`) ||\n (!startingTarget && index === 0)\n ) {\n $tabListItemLink.classList.add(\"tna-tabs__list-item-link--selected\");\n $tabListItemLink.setAttribute(\"aria-selected\", true);\n $tabListItemLink.setAttribute(\"tabindex\", \"0\");\n } else {\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n }\n\n $tabListItemLink.addEventListener(\n \"keydown\",\n (e) => this.handleItemLinkKeyDown(e),\n true,\n );\n $tabListItemLink.addEventListener(\n \"click\",\n (e) => this.handleItemLinkClick(e),\n true,\n );\n });\n }\n\n handleItemLinkClick(itemLinkClickEvent) {\n itemLinkClickEvent.preventDefault();\n const targetItem =\n itemLinkClickEvent.currentTarget.getAttribute(\"aria-controls\");\n\n this.switchTab(targetItem);\n }\n\n handleItemLinkKeyDown(itemLinkKeyDownEvent) {\n const targetItem = itemLinkKeyDownEvent.currentTarget;\n let overwriteKeyAction = false;\n\n switch (itemLinkKeyDownEvent.key) {\n case \"ArrowLeft\":\n this.setSelectedToPreviousTab(targetItem);\n overwriteKeyAction = true;\n break;\n\n case \"ArrowRight\":\n this.setSelectedToNextTab(targetItem);\n overwriteKeyAction = true;\n break;\n\n case \"Home\":\n this.switchTab(this.$tabListItemLinks[0].getAttribute(\"aria-controls\"));\n overwriteKeyAction = true;\n break;\n\n case \"End\":\n this.switchTab(\n this.$tabListItemLinks[\n this.$tabListItemLinks.length - 1\n ].getAttribute(\"aria-controls\"),\n );\n overwriteKeyAction = true;\n break;\n\n default:\n break;\n }\n\n if (overwriteKeyAction) {\n itemLinkKeyDownEvent.stopPropagation();\n itemLinkKeyDownEvent.preventDefault();\n }\n }\n\n setSelectedToNextTab(targetItem) {\n console.log(\"setSelectedToNextTab\", targetItem);\n const currentIndex = [...this.$tabListItemLinks].findIndex(\n ($tabListItemLink) =>\n $tabListItemLink.getAttribute(\"id\") === targetItem.getAttribute(\"id\"),\n );\n let newIndex;\n if (currentIndex < this.$tabListItemLinks.length - 1) {\n newIndex = currentIndex + 1;\n } else {\n newIndex = 0;\n }\n console.log(currentIndex, newIndex);\n this.switchTab(\n this.$tabListItemLinks[newIndex].getAttribute(\"aria-controls\"),\n );\n }\n\n setSelectedToPreviousTab(targetItem) {\n console.log(\"setSelectedToPreviousTab\", targetItem);\n const currentIndex = [...this.$tabListItemLinks].findIndex(\n ($tabListItemLink) =>\n $tabListItemLink.getAttribute(\"id\") === targetItem.getAttribute(\"id\"),\n );\n let newIndex;\n if (currentIndex >= 1) {\n newIndex = currentIndex - 1;\n } else {\n newIndex = this.$tabListItemLinks.length - 1;\n }\n console.log(currentIndex, newIndex);\n this.switchTab(\n this.$tabListItemLinks[newIndex].getAttribute(\"aria-controls\"),\n );\n }\n\n switchTab(targetId) {\n this.$tabListItemLinks.forEach(($tabListItemLink) => {\n if ($tabListItemLink.getAttribute(\"aria-controls\") === targetId) {\n $tabListItemLink.classList.add(\"tna-tabs__list-item-link--selected\");\n $tabListItemLink.setAttribute(\"aria-selected\", true);\n $tabListItemLink.setAttribute(\"tabindex\", \"0\");\n $tabListItemLink.focus();\n } else {\n $tabListItemLink.classList.remove(\"tna-tabs__list-item-link--selected\");\n $tabListItemLink.setAttribute(\"aria-selected\", false);\n $tabListItemLink.setAttribute(\"tabindex\", \"-1\");\n }\n });\n\n this.$tabItems.forEach(($tabItem) => {\n if ($tabItem.getAttribute(\"id\") === targetId) {\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 if (this.sticky) {\n if (history.replaceState) {\n history.replaceState(null, null, `#${targetId}`);\n } else {\n location.hash = `#${targetId}`;\n }\n }\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 { Breadcrumbs } from \"./components/breadcrumbs/breadcrumbs.mjs\";\nimport { Header } from \"./components/header/header.mjs\";\nimport { Picture } from \"./components/picture/picture.mjs\";\nimport { SensitiveImage } from \"./components/sensitive-image/sensitive-image.mjs\";\nimport { Tabs } from \"./components/tabs/tabs.mjs\";\n\nconst $body = document.documentElement;\n\n$body.classList.add(\"tna-template--js-enabled\");\n\nconst onFirstTouch = () => {\n window.removeEventListener(\"touchstart\", onFirstTouch);\n $body.classList.add(\"tna-template--touched\");\n};\n\nconst onKeyDown = (e) => {\n if (e.key === \"Tab\") {\n $body.classList.add(\"tna-template--tabbed\");\n $body.classList.remove(\"tna-template--clicked\");\n }\n};\n\nconst onMouseDown = () => {\n $body.classList.add(\"tna-template--clicked\");\n $body.classList.remove(\"tna-template--tabbed\");\n};\n\nwindow.addEventListener(\"touchstart\", onFirstTouch);\nwindow.addEventListener(\"keydown\", onKeyDown);\nwindow.addEventListener(\"mousedown\", onMouseDown);\n\nif (document.documentElement.classList.contains(\"tna-template--system-theme\")) {\n document.documentElement.classList.add(\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"tna-template--dark-theme\"\n : \"tna-template--light-theme\",\n );\n if (window.matchMedia(\"(prefers-contrast: more)\").matches) {\n document.documentElement.classList.add(\"tna-template--high-contrast-theme\");\n }\n}\n\nconst initAll = (options) => {\n options = typeof options !== \"undefined\" ? options : {};\n const $scope =\n options.scope instanceof HTMLElement ? options.scope : document;\n\n const $breadcrumbs = $scope.querySelector('[data-module=\"tna-breadcrumbs\"]');\n if ($breadcrumbs) {\n new Breadcrumbs($breadcrumbs).init();\n }\n\n const $header = $scope.querySelector('[data-module=\"tna-header\"]');\n if ($header) {\n new Header($header).init();\n }\n\n const $pictures = $scope.querySelectorAll('[data-module=\"tna-picture\"]');\n $pictures.forEach(($picture) => {\n new Picture($picture).init();\n });\n\n const $sensitiveImages = $scope.querySelectorAll(\n '[data-module=\"tna-sensitive-image\"]',\n );\n $sensitiveImages.forEach(($sensitiveImage) => {\n new SensitiveImage($sensitiveImage).init();\n });\n\n const $tabs = $scope.querySelectorAll('[data-module=\"tna-tabs\"]');\n $tabs.forEach(($tabModule) => {\n new Tabs($tabModule).init();\n });\n};\n\nexport { initAll, Breadcrumbs, Header, Picture, SensitiveImage, Tabs };\n"],"names":["root","factory","exports","module","define","amd","self","Breadcrumbs","$module","_classCallCheck","this","$breadcrumbsListWrapper","querySelector","$breadcrumbsList","$breadcrumbs","querySelectorAll","key","value","_this","length","classList","contains","uniqueId","concat","uuidv4","$expandable","document","createElement","add","style","display","$expandButton","innerHTML","setAttribute","addEventListener","remove","focus","appendChild","insertBefore","nextSibling","Header","$toggleButtonWrapper","$navigation","$links","menuOpened","mql","window","matchMedia","$toggleButton","innerText","$hamburger","syncState","handleToggleNavigation","addListener","matches","hidden","i","Picture","$imageWrapper","$transcript","transcriptOpened","$transcriptToggle","handleToggleTranscript","transcriptToggleOpenedClass","removeAttribute","SensitiveImage","$imageDetails","$image","imageIsVisible","handleImageDetailsToggle","hasAttribute","preventScroll","focusVisible","Tabs","$tabList","$tabListItemLinks","$tabItems","sticky","startingTarget","location","hash","replace","$newTabList","getAttribute","forEach","$tabItem","index","$tabListItemLink","$replacementButton","replaceWith","e","handleItemLinkKeyDown","handleItemLinkClick","itemLinkClickEvent","preventDefault","targetItem","currentTarget","switchTab","itemLinkKeyDownEvent","overwriteKeyAction","setSelectedToPreviousTab","setSelectedToNextTab","stopPropagation","console","log","newIndex","currentIndex","_toConsumableArray","findIndex","targetId","history","replaceState","c","crypto","getRandomValues","Uint8Array","toString","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","d","definition","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","$body","documentElement","onFirstTouch","removeEventListener","initAll","options","$scope","scope","HTMLElement","init","$header","$picture","$sensitiveImage","$tabModule"],"sourceRoot":""}
@@ -1,6 +1,5 @@
1
1
  @forward "variables";
2
2
  @forward "tools";
3
3
 
4
- @use "utilities";
5
- @use "components";
6
- @use "patterns";
4
+ @forward "utilities";
5
+ @forward "components";
@@ -1,5 +1,6 @@
1
1
  @use "../../tools/colour";
2
2
  @use "../../tools/media";
3
+ @use "../../tools/typography";
3
4
 
4
5
  .tna-breadcrumbs {
5
6
  padding-top: 1rem;
@@ -94,8 +95,7 @@
94
95
 
95
96
  &:hover {
96
97
  color: inherit;
97
- text-decoration: underline;
98
- text-decoration-thickness: 3px;
98
+ @include typography.interacted-text-decoration;
99
99
 
100
100
  background-color: transparent;
101
101
  }
@@ -0,0 +1,18 @@
1
+ @use "../../tools/media";
2
+
3
+ .tna-button-group {
4
+ margin-bottom: 2rem;
5
+
6
+ display: flex;
7
+ flex-wrap: wrap;
8
+ gap: 1rem;
9
+
10
+ &:last-child {
11
+ margin-bottom: 0;
12
+ }
13
+
14
+ @include media.on-tiny {
15
+ flex-direction: column;
16
+ align-items: stretch;
17
+ }
18
+ }
@@ -1,4 +1,6 @@
1
1
  @use "../../tools/colour";
2
+ @use "../../tools/media";
3
+ @import "button-group";
2
4
 
3
5
  .tna-button {
4
6
  padding: 0.25rem 1rem;
@@ -7,6 +9,7 @@
7
9
 
8
10
  font-weight: 700;
9
11
  text-decoration: none;
12
+ text-align: center;
10
13
 
11
14
  @include colour.colour-background("button-primary-background");
12
15
 
@@ -27,8 +30,9 @@
27
30
 
28
31
  &:hover {
29
32
  @include colour.colour-font("button-primary-hover-text");
33
+ text-decoration: none;
30
34
 
31
- @include colour.colour-background("button-primary-hover-background");
35
+ background: transparent;
32
36
 
33
37
  transition:
34
38
  color 50ms,
@@ -36,21 +40,34 @@
36
40
  border-color 50ms;
37
41
  }
38
42
 
39
- &--secondary {
40
- @include colour.colour-background("button-secondary-background");
43
+ &--accent {
44
+ @include colour.colour-background("button-accent-background");
41
45
 
42
- @include colour.colour-border("button-secondary-background");
46
+ @include colour.colour-border("button-accent-background");
43
47
 
44
48
  &,
45
49
  &:link,
46
50
  &:visited {
47
- @include colour.colour-font("button-secondary-text");
51
+ @include colour.colour-font("button-accent-text");
48
52
  }
49
53
 
50
54
  &:hover {
51
- @include colour.colour-font("button-secondary-hover-text");
55
+ @include colour.colour-font("font-dark");
56
+ }
57
+ }
52
58
 
53
- @include colour.colour-background("button-secondary-hover-background");
59
+ &--solid-hover,
60
+ .tna-background--accent &,
61
+ .tna-background--accent-light & {
62
+ &:hover {
63
+ @include colour.colour-background("page-background");
54
64
  }
55
65
  }
66
+
67
+ .fa,
68
+ .fa-regular,
69
+ .fa-solid,
70
+ .fa-brands {
71
+ margin-right: 0.5rem;
72
+ }
56
73
  }
@@ -5,7 +5,9 @@ const argTypes = {
5
5
  text: { control: "text" },
6
6
  href: { control: "text" },
7
7
  title: { control: "text" },
8
- secondary: { control: "boolean" },
8
+ icon: { control: "text" },
9
+ brandIcon: { control: "text" },
10
+ accent: { control: "boolean" },
9
11
  classes: { control: "text" },
10
12
  attributes: { control: "object" },
11
13
  };
@@ -21,13 +23,24 @@ export default {
21
23
  argTypes,
22
24
  };
23
25
 
24
- const Template = ({ text, href, title, secondary, classes, attributes }) =>
26
+ const Template = ({
27
+ text,
28
+ href,
29
+ title,
30
+ icon,
31
+ brandIcon,
32
+ accent,
33
+ classes,
34
+ attributes,
35
+ }) =>
25
36
  Button({
26
37
  params: {
27
38
  text,
28
39
  href,
29
40
  title,
30
- secondary,
41
+ icon,
42
+ brandIcon,
43
+ accent,
31
44
  classes,
32
45
  attributes,
33
46
  },
@@ -40,10 +53,54 @@ Standard.args = {
40
53
  classes: "tna-button--demo",
41
54
  };
42
55
 
43
- export const Secondary = Template.bind({});
44
- Secondary.args = {
56
+ export const Accent = Template.bind({});
57
+ Accent.args = {
45
58
  text: "Button",
46
59
  href: "#",
47
- secondary: true,
60
+ accent: true,
48
61
  classes: "tna-button--demo",
49
62
  };
63
+
64
+ export const Icon = Template.bind({});
65
+ Icon.args = {
66
+ text: "Explore the collection",
67
+ href: "#",
68
+ icon: "map-location-dot",
69
+ classes: "tna-button--demo",
70
+ };
71
+
72
+ export const BrandIcon = Template.bind({});
73
+ BrandIcon.args = {
74
+ text: "Twitter",
75
+ href: "#",
76
+ brandIcon: "twitter",
77
+ classes: "tna-button--demo",
78
+ };
79
+
80
+ const GroupTemplate = ({ buttons }) =>
81
+ `<div class="tna-button-group">
82
+ ${buttons.map((button) => Template(button)).join("")}
83
+ </div>`;
84
+
85
+ export const Group = GroupTemplate.bind({});
86
+ Group.args = {
87
+ buttons: [
88
+ {
89
+ text: "Button 1",
90
+ href: "#",
91
+ classes: "tna-button--demo",
92
+ },
93
+ {
94
+ text: "Button 2",
95
+ href: "#",
96
+ accent: true,
97
+ classes: "tna-button--demo",
98
+ },
99
+ {
100
+ text: "Call us",
101
+ href: "#",
102
+ icon: "phone",
103
+ classes: "tna-button--demo",
104
+ },
105
+ ],
106
+ };
@@ -21,13 +21,13 @@
21
21
  "hidden": false
22
22
  },
23
23
  {
24
- "name": "secondary",
24
+ "name": "accent",
25
25
  "options": {
26
26
  "text": "Log in",
27
27
  "href": "#",
28
- "secondary": true
28
+ "accent": true
29
29
  },
30
- "html": "<a href=\"#\" class=\"tna-button tna-button--secondary\" role=\"button\">Log in</a>",
30
+ "html": "<a href=\"#\" class=\"tna-button tna-button--accent\" role=\"button\">Log in</a>",
31
31
  "hidden": false
32
32
  },
33
33
  {
@@ -18,7 +18,19 @@
18
18
  "description": ""
19
19
  },
20
20
  {
21
- "name": "secondary",
21
+ "name": "icon",
22
+ "type": "string",
23
+ "required": false,
24
+ "description": ""
25
+ },
26
+ {
27
+ "name": "brandIcon",
28
+ "type": "string",
29
+ "required": false,
30
+ "description": ""
31
+ },
32
+ {
33
+ "name": "accent",
22
34
  "type": "boolean",
23
35
  "required": false,
24
36
  "description": ""
@@ -1,7 +1,12 @@
1
1
  {%- set buttonClasses = [params.classes] if params.classes else [] -%}
2
- {%- if params.secondary -%}
3
- {%- set buttonClasses = buttonClasses.concat('tna-button--secondary') -%}
2
+ {%- if params.accent -%}
3
+ {%- set buttonClasses = buttonClasses.concat('tna-button--accent') -%}
4
4
  {%- endif -%}
5
5
  <a href="{{ params.href }}" class="tna-button {{ buttonClasses | join(' ') }}" role="button"{%- if params.title %} title="{{ params.title }}"{% endif %} {%- for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
6
+ {%- if params.brandIcon -%}
7
+ <i class="fa-brands fa-{{ params.brandIcon }}"></i>
8
+ {%- elseif params.icon -%}
9
+ <i class="fa-solid fa-{{ params.icon }}"></i>
10
+ {%- endif -%}
6
11
  {{ params.text }}
7
12
  </a>