{"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":""}