{"version":3,"file":"tab-container.js","sources":["../../../../src/assets/scripts/tab-container.entry.js"],"sourcesContent":["window.arjoTabContainerJs = window.arjoTabContainerJs || {\n isInitialized: false,\n setup: function () {\n const tabContainers = [...document.querySelectorAll('.arjo-o-tab-container')];\n\n tabContainers.forEach((tabContainer) => {\n const tabSwitcher = tabContainer.querySelector('.arjo-m-tab-switcher');\n if (!tabSwitcher) {\n return;\n }\n\n const tabContainerInner = tabContainer.querySelector('.arjo-m-tab-switcher__container');\n const tabBar = tabContainerInner.querySelector('.arjo-m-tab-switcher__tabs');\n const selectedRadio = tabBar.querySelector('.arjo-m-tab-switcher__input:checked');\n if (!selectedRadio) {\n return;\n }\n\n const tabBarHeader = tabContainerInner.querySelector('.arjo-m-tab-switcher__header');\n if (!tabBarHeader) {\n return;\n }\n\n tabBarHeader.addEventListener('click', function () {\n tabSwitcher.toggleAttribute('data-arjo-expand');\n });\n\n document.addEventListener('click', function (e) {\n if (!tabSwitcher.contains(e.target)) {\n tabSwitcher.removeAttribute('data-arjo-expand');\n }\n });\n });\n\n const url = new URL(location.href);\n const inputDownload = document.querySelector('.arjo-m-tab-switcher__input[data-download-tab]');\n\n if (!inputDownload) {\n return;\n }\n\n const tabContainer = inputDownload.closest('.arjo-o-tab-container');\n\n if (url.searchParams.get('showdownload') == 'true') {\n inputDownload.checked = true;\n tabContainer && tabContainer.scrollIntoViewEx();\n }\n },\n resizeHandler: function () {\n const tabContainers = [...document.querySelectorAll('.arjo-o-tab-container')];\n tabContainers.forEach((tabContainer) => {\n const tabSwitcher = tabContainer.querySelector('.arjo-m-tab-switcher');\n if (!tabSwitcher) {\n return;\n }\n const tabContainerInner = tabSwitcher.querySelector('.arjo-m-tab-switcher__container');\n const tabBar = tabContainerInner.querySelector('.arjo-m-tab-switcher__tabs');\n const selectedRadio = tabBar.querySelector('.arjo-m-tab-switcher__input:checked');\n if (!selectedRadio) {\n return;\n }\n\n const tabBarHeader = tabContainerInner.querySelector('.arjo-m-tab-switcher__header');\n if (!tabBarHeader) {\n return;\n }\n\n const tabBarHeaderText = tabBarHeader.querySelector('.arjo-m-tab-switcher__text');\n if (!tabBarHeaderText) {\n return;\n }\n\n const selectedLabel = tabBar.querySelector('label[for=\"' + selectedRadio.id + '\"]');\n if (!selectedLabel) {\n return;\n }\n\n tabSwitcher.removeAttribute('data-arjo-expand');\n\n tabBarHeaderText.textContent = selectedLabel.textContent;\n\n const tabBarBoundingClientRect = tabBar.getBoundingClientRect();\n const labelBoundingClientRect = selectedLabel.getBoundingClientRect();\n const labelOffsetX = labelBoundingClientRect.x - tabBarBoundingClientRect.x;\n const labelWidth = labelBoundingClientRect.width;\n\n tabBar.style.setProperty('--tabOffsetX', labelOffsetX + 'px');\n tabBar.style.setProperty('--tabWidth', labelWidth + 'px');\n\n const selectedTabIndex = selectedRadio.getAttribute('data-arjo-tab');\n const tabItems = [...tabContainer.querySelectorAll('div[data-arjo-tab]')];\n tabItems.forEach((tabItem) => {\n tabItem.style.display = tabItem.getAttribute('data-arjo-tab') == selectedTabIndex ? 'block' : 'none';\n });\n });\n },\n\n init: function () {\n if (this.isInitialized) {\n return;\n }\n this.isInitialized = true;\n\n this.setup();\n\n addEventListener('resize', this.resizeHandler);\n var tabRadios = [...document.querySelectorAll('.arjo-m-tab-switcher__input')];\n tabRadios.forEach((tabRadio) => {\n if ('#' + tabRadio.id === window.location.hash) {\n tabRadio.checked = true;\n var tabContainer = tabRadio.closest('.arjo-o-tab-container');\n if (tabContainer) {\n tabContainer.scrollIntoViewEx();\n }\n }\n tabRadio.addEventListener('change', () => {\n window.location.hash = '#' + tabRadio.id;\n this.resizeHandler();\n });\n });\n\n this.resizeHandler();\n },\n};\n\nwindow.addEventListener('load', function () {\n window.arjoTabContainerJs.init();\n});\n"],"names":["tabContainer","tabSwitcher","tabContainerInner","tabBarHeader","e","url","inputDownload","tabBar","selectedRadio","tabBarHeaderText","selectedLabel","tabBarBoundingClientRect","labelBoundingClientRect","labelOffsetX","labelWidth","selectedTabIndex","tabItem","tabRadios","tabRadio"],"mappings":"AAAA,OAAO,mBAAqB,OAAO,oBAAsB,CACvD,cAAe,GACf,MAAO,UAAY,CACK,CAAC,GAAG,SAAS,iBAAiB,uBAAuB,CAAC,EAE9D,QAASA,GAAiB,CACtC,MAAMC,EAAcD,EAAa,cAAc,sBAAsB,EACrE,GAAI,CAACC,EACH,OAGF,MAAMC,EAAoBF,EAAa,cAAc,iCAAiC,EAGtF,GAAI,CAFWE,EAAkB,cAAc,4BAA4B,EAC9C,cAAc,qCAAqC,EAE9E,OAGF,MAAMC,EAAeD,EAAkB,cAAc,8BAA8B,EAC9EC,IAILA,EAAa,iBAAiB,QAAS,UAAY,CACjDF,EAAY,gBAAgB,kBAAkB,CACtD,CAAO,EAED,SAAS,iBAAiB,QAAS,SAAUG,EAAG,CACzCH,EAAY,SAASG,EAAE,MAAM,GAChCH,EAAY,gBAAgB,kBAAkB,CAExD,CAAO,EACP,CAAK,EAED,MAAMI,EAAM,IAAI,IAAI,SAAS,IAAI,EAC3BC,EAAgB,SAAS,cAAc,gDAAgD,EAE7F,GAAI,CAACA,EACH,OAGF,MAAMN,EAAeM,EAAc,QAAQ,uBAAuB,EAE9DD,EAAI,aAAa,IAAI,cAAc,GAAK,SAC1CC,EAAc,QAAU,GACxBN,GAAgBA,EAAa,mBAEhC,EACD,cAAe,UAAY,CACH,CAAC,GAAG,SAAS,iBAAiB,uBAAuB,CAAC,EAC9D,QAASA,GAAiB,CACtC,MAAMC,EAAcD,EAAa,cAAc,sBAAsB,EACrE,GAAI,CAACC,EACH,OAEF,MAAMC,EAAoBD,EAAY,cAAc,iCAAiC,EAC/EM,EAASL,EAAkB,cAAc,4BAA4B,EACrEM,EAAgBD,EAAO,cAAc,qCAAqC,EAChF,GAAI,CAACC,EACH,OAGF,MAAML,EAAeD,EAAkB,cAAc,8BAA8B,EACnF,GAAI,CAACC,EACH,OAGF,MAAMM,EAAmBN,EAAa,cAAc,4BAA4B,EAChF,GAAI,CAACM,EACH,OAGF,MAAMC,EAAgBH,EAAO,cAAc,cAAgBC,EAAc,GAAK,IAAI,EAClF,GAAI,CAACE,EACH,OAGFT,EAAY,gBAAgB,kBAAkB,EAE9CQ,EAAiB,YAAcC,EAAc,YAE7C,MAAMC,EAA2BJ,EAAO,wBAClCK,EAA0BF,EAAc,wBACxCG,EAAeD,EAAwB,EAAID,EAAyB,EACpEG,EAAaF,EAAwB,MAE3CL,EAAO,MAAM,YAAY,eAAgBM,EAAe,IAAI,EAC5DN,EAAO,MAAM,YAAY,aAAcO,EAAa,IAAI,EAExD,MAAMC,EAAmBP,EAAc,aAAa,eAAe,EAClD,CAAC,GAAGR,EAAa,iBAAiB,oBAAoB,CAAC,EAC/D,QAASgB,GAAY,CAC5BA,EAAQ,MAAM,QAAUA,EAAQ,aAAa,eAAe,GAAKD,EAAmB,QAAU,MACtG,CAAO,CACP,CAAK,CACF,EAED,KAAM,UAAY,CAChB,GAAI,MAAK,cAGT,MAAK,cAAgB,GAErB,KAAK,MAAK,EAEV,iBAAiB,SAAU,KAAK,aAAa,EAC7C,IAAIE,EAAY,CAAC,GAAG,SAAS,iBAAiB,6BAA6B,CAAC,EAC5EA,EAAU,QAASC,GAAa,CAC9B,GAAI,IAAMA,EAAS,KAAO,OAAO,SAAS,KAAM,CAC9CA,EAAS,QAAU,GACnB,IAAIlB,EAAekB,EAAS,QAAQ,uBAAuB,EACvDlB,GACFA,EAAa,iBAAgB,CAEhC,CACDkB,EAAS,iBAAiB,SAAU,IAAM,CACxC,OAAO,SAAS,KAAO,IAAMA,EAAS,GACtC,KAAK,cAAa,CAC1B,CAAO,CACP,CAAK,EAED,KAAK,cAAa,EACnB,CACH,EAEA,OAAO,iBAAiB,OAAQ,UAAY,CAC1C,OAAO,mBAAmB,MAC5B,CAAC"}