{
  "version": 3,
  "sources": ["/cdn/shop/t/171/assets/localization-form.js?cb=20260310c"],
  "sourcesContent": ["if (!customElements.get('localization-form')) {\n  customElements.define(\n    'localization-form',\n    class LocalizationForm extends HTMLElement {\n      constructor() {\n        super();\n        this.mql = window.matchMedia('(min-width: 750px)');\n        this.header = document.querySelector('.header-wrapper');\n        this.elements = {\n          input: this.querySelector('input[name=\"locale_code\"], input[name=\"country_code\"]'),\n          button: this.querySelector('button.localization-form__select'),\n          panel: this.querySelector('.disclosure__list-wrapper'),\n          search: this.querySelector('input[name=\"country_filter\"]'),\n          closeButton: this.querySelector('.country-selector__close-button'),\n          resetButton: this.querySelector('.country-filter__reset-button'),\n          searchIcon: this.querySelector('.country-filter__search-icon'),\n          liveRegion: this.querySelector('#sr-country-search-results'),\n        };\n        this.addEventListener('keyup', this.onContainerKeyUp.bind(this));\n        this.addEventListener('keydown', this.onContainerKeyDown.bind(this));\n        this.addEventListener('focusout', this.closeSelector.bind(this));\n        this.elements.button.addEventListener('click', this.openSelector.bind(this));\n\n        if (this.elements.search) {\n          this.elements.search.addEventListener('keyup', this.filterCountries.bind(this));\n          this.elements.search.addEventListener('focus', this.onSearchFocus.bind(this));\n          this.elements.search.addEventListener('blur', this.onSearchBlur.bind(this));\n          this.elements.search.addEventListener('keydown', this.onSearchKeyDown.bind(this));\n        }\n        if (this.elements.closeButton) {\n          this.elements.closeButton.addEventListener('click', this.hidePanel.bind(this));\n        }\n        if (this.elements.resetButton) {\n          this.elements.resetButton.addEventListener('click', this.resetFilter.bind(this));\n          this.elements.resetButton.addEventListener('mousedown', (event) => event.preventDefault());\n        }\n\n        this.querySelectorAll('a').forEach((item) => item.addEventListener('click', this.onItemClick.bind(this)));\n      }\n\n      hidePanel() {\n        this.elements.button.setAttribute('aria-expanded', 'false');\n        this.elements.panel.setAttribute('hidden', true);\n        if (this.elements.search) {\n          this.elements.search.value = '';\n          this.filterCountries();\n          this.elements.search.setAttribute('aria-activedescendant', '');\n        }\n        document.body.classList.remove('overflow-hidden-mobile');\n        document.querySelector('.menu-drawer').classList.remove('country-selector-open');\n        this.header.preventHide = false;\n      }\n\n      onContainerKeyDown(event) {\n        const focusableItems = Array.from(this.querySelectorAll('a')).filter(\n          (item) => !item.parentElement.classList.contains('hidden')\n        );\n        let focusedItemIndex = focusableItems.findIndex((item) => item === document.activeElement);\n        let itemToFocus;\n\n        switch (event.code.toUpperCase()) {\n          case 'ARROWUP':\n            event.preventDefault();\n            itemToFocus =\n              focusedItemIndex > 0 ? focusableItems[focusedItemIndex - 1] : focusableItems[focusableItems.length - 1];\n            itemToFocus.focus();\n            break;\n          case 'ARROWDOWN':\n            event.preventDefault();\n            itemToFocus =\n              focusedItemIndex < focusableItems.length - 1 ? focusableItems[focusedItemIndex + 1] : focusableItems[0];\n            itemToFocus.focus();\n            break;\n        }\n\n        if (!this.elements.search) return;\n\n        setTimeout(() => {\n          focusedItemIndex = focusableItems.findIndex((item) => item === document.activeElement);\n          if (focusedItemIndex > -1) {\n            this.elements.search.setAttribute('aria-activedescendant', focusableItems[focusedItemIndex].id);\n          } else {\n            this.elements.search.setAttribute('aria-activedescendant', '');\n          }\n        });\n      }\n\n      onContainerKeyUp(event) {\n        event.preventDefault();\n\n        switch (event.code.toUpperCase()) {\n          case 'ESCAPE':\n            if (this.elements.button.getAttribute('aria-expanded') == 'false') return;\n            this.hidePanel();\n            event.stopPropagation();\n            this.elements.button.focus();\n            break;\n          case 'SPACE':\n            if (this.elements.button.getAttribute('aria-expanded') == 'true') return;\n            this.openSelector();\n            break;\n        }\n      }\n\n      onItemClick(event) {\n        event.preventDefault();\n        const form = this.querySelector('form');\n        this.elements.input.value = event.currentTarget.dataset.value;\n        if (form) form.submit();\n      }\n\n      openSelector() {\n        this.elements.button.focus();\n        this.elements.panel.toggleAttribute('hidden');\n        this.elements.button.setAttribute(\n          'aria-expanded',\n          (this.elements.button.getAttribute('aria-expanded') === 'false').toString()\n        );\n        if (!document.body.classList.contains('overflow-hidden-tablet')) {\n          document.body.classList.add('overflow-hidden-mobile');\n        }\n        if (this.elements.search && this.mql.matches) {\n          this.elements.search.focus();\n        }\n        if (this.hasAttribute('data-prevent-hide')) {\n          this.header.preventHide = true;\n        }\n        document.querySelector('.menu-drawer').classList.add('country-selector-open');\n      }\n\n      closeSelector(event) {\n        if (\n          event.target.classList.contains('country-selector__overlay') ||\n          !this.contains(event.target) ||\n          !this.contains(event.relatedTarget)\n        ) {\n          this.hidePanel();\n        }\n      }\n\n      normalizeString(str) {\n        return str\n          .normalize('NFD')\n          .replace(/\\p{Diacritic}/gu, '')\n          .toLowerCase();\n      }\n\n      filterCountries() {\n        const searchValue = this.normalizeString(this.elements.search.value);\n        const popularCountries = this.querySelector('.popular-countries');\n        const allCountries = this.querySelectorAll('a');\n        let visibleCountries = allCountries.length;\n\n        this.elements.resetButton.classList.toggle('hidden', !searchValue);\n\n        if (popularCountries) {\n          popularCountries.classList.toggle('hidden', searchValue);\n        }\n\n        allCountries.forEach((item) => {\n          const countryName = this.normalizeString(item.querySelector('.country').textContent);\n          if (countryName.indexOf(searchValue) > -1) {\n            item.parentElement.classList.remove('hidden');\n            visibleCountries++;\n          } else {\n            item.parentElement.classList.add('hidden');\n            visibleCountries--;\n          }\n        });\n\n        if (this.elements.liveRegion) {\n          this.elements.liveRegion.innerHTML = window.accessibilityStrings.countrySelectorSearchCount.replace(\n            '[count]',\n            visibleCountries\n          );\n        }\n\n        this.querySelector('.country-selector').scrollTop = 0;\n        this.querySelector('.country-selector__list').scrollTop = 0;\n      }\n\n      resetFilter(event) {\n        event.stopPropagation();\n        this.elements.search.value = '';\n        this.filterCountries();\n        this.elements.search.focus();\n      }\n\n      onSearchFocus() {\n        this.elements.searchIcon.classList.add('country-filter__search-icon--hidden');\n      }\n\n      onSearchBlur() {\n        if (!this.elements.search.value) {\n          this.elements.searchIcon.classList.remove('country-filter__search-icon--hidden');\n        }\n      }\n\n      onSearchKeyDown(event) {\n        if (event.code.toUpperCase() === 'ENTER') {\n          event.preventDefault();\n        }\n      }\n    }\n  );\n}\n"],
  "mappings": "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",
  "names": []
}
