{"version":3,"sources":["webpack:///./app/components/m/stage-search/index.js"],"names":["stageSearch","document","querySelector","flyout","clearBtn","searchBtn","form","searchAction","action","addEventListener","e","preventDefault","trackingEventData","eventtype","searchterm","value","track","submit","length","style","display","$","ajax","url","CONF","STAGE_SEARCH","data","q","done","innerHTML","forEach","element","li","createElement","appendChild","fail","jqXHR","textStatus","console","warn","event","stopPropagation","target","closest","textContent"],"mappings":"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","file":"stage-search.chunk.js","sourcesContent":["import { track } from '../../../core/js/libs/TrackingService';\r\n\r\nconst stageSearch = document.querySelector('#stage-search');\r\nconst flyout = document.querySelector('.stage-search__flyout');\r\nconst clearBtn = document.querySelector('.stage-search__clear');\r\nconst searchBtn = document.querySelector('.stage-search__btn');\r\nconst form = document.querySelector('.stage-search form');\r\nconst searchAction = form?.action;\r\n\r\n/**\r\n * Form submit listener to block search submit until\r\n * tracking event is sent\r\n */\r\nform.addEventListener('submit', function (e) {\r\n // prevent default submit\r\n e.preventDefault();\r\n\r\n // create the tracking event data\r\n const trackingEventData = {\r\n eventtype: 'partsSearchBar',\r\n searchterm: stageSearch.value,\r\n };\r\n // and push it\r\n track(trackingEventData);\r\n\r\n // submit form after tracking event is sent\r\n this.submit();\r\n});\r\n\r\nstageSearch.addEventListener('input', function () {\r\n if (this.value.length > 0) {\r\n // if something is inputed\r\n clearBtn.style.display = 'block';\r\n $.ajax({\r\n url: CONF.STAGE_SEARCH, //url for search suggestions\r\n data: {\r\n q: this.value,\r\n },\r\n })\r\n .done(function (data) {\r\n flyout.innerHTML = ''; // clear previous suggestions\r\n flyout.style.display = 'block';\r\n // create elements for suggestions\r\n data.forEach((element) => {\r\n const li = document.createElement('li');\r\n li.innerHTML = element;\r\n flyout.appendChild(li);\r\n });\r\n })\r\n .fail(function (jqXHR, textStatus) {\r\n console.warn(textStatus);\r\n });\r\n } else {\r\n // if nothing is in input\r\n clearBtn.style.display = 'none';\r\n flyout.style.display = 'none';\r\n flyout.innerHTML = '';\r\n }\r\n});\r\n\r\n// close flyout by clicking outside of the search\r\ndocument.addEventListener('click', (e) => {\r\n flyout.style.display = 'none';\r\n document.querySelector('.form-group').addEventListener('click', function (event) {\r\n event.stopPropagation();\r\n });\r\n});\r\n\r\n// select suggestions\r\nflyout.addEventListener('click', function (event) {\r\n stageSearch.value = event.target.closest('li').textContent;\r\n flyout.style.display = 'none';\r\n});\r\n\r\n// clear Button function\r\nclearBtn.addEventListener('click', function (event) {\r\n clearBtn.style.display = 'none';\r\n if (flyout) {\r\n flyout.style.display = 'none';\r\n flyout.innerHTML = '';\r\n }\r\n});\r\n"],"sourceRoot":""}