{"version":3,"file":"main-navigation.js","mappings":"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","sources":["webpack://empori-base/./src/controls/MainNavigation.ts"],"sourcesContent":["function RedundantPages(nav: HTMLDivElement, triggerer: HTMLDivElement) {\r\n  if (!nav || !triggerer) {\r\n    return;\r\n  }\r\n\r\n  const settings = {\r\n    triggered: 'triggered',\r\n    isTriggered: false,\r\n    iconOpenClass: 'fa-bars',\r\n    iconCloseClass: 'fa-times'\r\n  };\r\n\r\n  triggerer.onclick = event => {\r\n    event.preventDefault();\r\n    const icon = triggerer.getElementsByTagName('i');\r\n\r\n    if (!settings.isTriggered) {\r\n      nav.classList.add(settings.triggered);\r\n      triggerer.classList.add(settings.triggered);\r\n\r\n      if (icon.length && icon.length > 0) {\r\n        if (icon.length > 1) {\r\n          icon[0].style.display = 'none';\r\n          icon[1].style.display = 'inline-block';\r\n        } else {\r\n          icon[0].style.display = 'inline-block';\r\n        }\r\n      }\r\n\r\n      settings.isTriggered = true;\r\n      return;\r\n    }\r\n\r\n    nav.classList.remove(settings.triggered);\r\n    triggerer.classList.remove(settings.triggered);\r\n\r\n    if (icon.length && icon.length > 0) {\r\n      if (icon.length > 1) {\r\n        icon[0].style.display = 'inline-block';\r\n        icon[1].style.display = 'none';\r\n      } else {\r\n        icon[0].style.display = 'none';\r\n      }\r\n    }\r\n\r\n    settings.isTriggered = false;\r\n  };\r\n}\r\n\r\nfunction SearchBar(nav: HTMLDivElement, searchTriggerer: HTMLDivElement, mobileTrigger: HTMLDivElement) {\r\n\r\n  if (!nav || !searchTriggerer) {\r\n    return;\r\n  }\r\n\r\n  const settings = {\r\n    triggered: 'triggered',\r\n    isTriggered: false\r\n  };\r\n  const searchBox = nav.querySelector('.empori-header-search');\r\n\r\n  if (searchBox) {\r\n    searchTriggerer.classList.add('pull-right');\r\n  }\r\n  searchTriggerer.onclick = event => {\r\n    event.preventDefault();\r\n    const icon = searchTriggerer.getElementsByTagName('i');\r\n    if (!settings.isTriggered) {\r\n\r\n      if (searchBox) {\r\n        searchBox.classList.add(settings.triggered);\r\n      }\r\n\r\n      if (icon.length && icon.length > 0) {\r\n        if (icon.length > 1) {\r\n          icon[0].style.display = 'none';\r\n          icon[1].style.display = 'inline-block';\r\n        } else {\r\n          icon[0].style.display = 'inline-block';\r\n        }\r\n      }\r\n\r\n      settings.isTriggered = true;\r\n      return;\r\n    }\r\n    nav.classList.remove(settings.triggered);\r\n    searchTriggerer.classList.remove(settings.triggered);\r\n    if (searchBox) {\r\n      searchBox.classList.remove(settings.triggered);\r\n    }\r\n\r\n    if (icon.length && icon.length > 0) {\r\n      if (icon.length > 1) {\r\n        icon[0].style.display = 'inline-block';\r\n        icon[1].style.display = 'none';\r\n      } else {\r\n        icon[0].style.display = 'none';\r\n      }\r\n    }\r\n\r\n    settings.isTriggered = false;\r\n  };\r\n}\r\n\r\nexport default function MainNavigation(\r\n  nav: HTMLDivElement,\r\n  mobileTrigger: HTMLDivElement,\r\n  redundantPagesNav: HTMLDivElement,\r\n  redundantTrigger: HTMLDivElement,\r\n  searchbar: HTMLDivElement) {\r\n\r\n  const settings = {\r\n    scrolled: 'scrolled',\r\n    triggered: 'triggered',\r\n    isTriggered: false,\r\n    iconOpenClass: 'fa-bars',\r\n    iconCloseClass: 'fa-times',\r\n    threshold: 50\r\n  };\r\n\r\n  const rawMobileMenu = nav.querySelector('.raw-mobile-menu');\r\n\r\n  if (window.scrollY > settings.threshold) {\r\n    nav.classList.add(settings.scrolled);\r\n\r\n    if (rawMobileMenu) {\r\n      rawMobileMenu.classList.add(settings.scrolled);\r\n    }\r\n  }\r\n\r\n  RedundantPages(redundantPagesNav, redundantTrigger);\r\n  SearchBar(nav, searchbar, mobileTrigger);\r\n\r\n  window.onscroll = () => {\r\n    if (window.pageYOffset > settings.threshold) {\r\n      nav.classList.add(settings.scrolled);\r\n\r\n      if (rawMobileMenu) {\r\n        rawMobileMenu.classList.add(settings.scrolled);\r\n      }\r\n\r\n    } else {\r\n      nav.classList.remove(settings.scrolled);\r\n\r\n      if (rawMobileMenu) {\r\n        rawMobileMenu.classList.remove(settings.scrolled);\r\n      }\r\n    }\r\n  };\r\n\r\n  mobileTrigger.onclick = event => {\r\n    event.preventDefault();\r\n    const icon = mobileTrigger.getElementsByTagName('i');\r\n\r\n    if (!settings.isTriggered) {\r\n      nav.classList.add(settings.triggered);\r\n      settings.isTriggered = true;\r\n\r\n      if (icon.length && icon.length > 0) {\r\n        if (icon.length > 1) {\r\n          icon[0].style.display = 'none';\r\n          icon[1].style.display = 'inline-block';\r\n        } else {\r\n          icon[0].style.display = 'inline-block';\r\n        }\r\n      }\r\n\r\n      return;\r\n    }\r\n\r\n    nav.classList.remove(settings.triggered);\r\n    settings.isTriggered = false;\r\n\r\n    if (icon.length && icon.length > 0) {\r\n      if (icon.length > 1) {\r\n        icon[0].style.display = 'inline-block';\r\n        icon[1].style.display = 'none';\r\n      } else {\r\n        icon[0].style.display = 'none';\r\n      }\r\n    }\r\n  };\r\n}"],"names":["MainNavigation","nav","mobileTrigger","redundantPagesNav","redundantTrigger","searchbar","settings","scrolled","triggered","isTriggered","iconOpenClass","iconCloseClass","threshold","rawMobileMenu","querySelector","window","scrollY","classList","add","triggerer","onclick","event","preventDefault","icon","getElementsByTagName","length","style","display","remove","RedundantPages","searchTriggerer","searchBox","SearchBar","onscroll","pageYOffset"],"sourceRoot":""}