{"version":3,"file":"js/menu.js","mappings":"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","sources":["webpack://daily-sushi-vue/./src/js/pages/menu/menu-filters.js","webpack://daily-sushi-vue/./src/js/pages/menu/menu-search.js","webpack://daily-sushi-vue/./src/js/pages/menu/index.js","webpack://daily-sushi-vue/./src/scss/pages/menu-page.scss"],"sourcesContent":["// \r\n// import filtersJSON from './filters.json';\r\n\r\nexport default function menuFilters() {\r\n const filtersModal = document.querySelector('#filters-modal');\r\n if (!filtersModal) return;\r\n\r\n const filtersModalBody = filtersModal.querySelector('.modal-body');\r\n const filtersWrapper = document.querySelector('.menu-page-filters');\r\n const filterButtons = filtersWrapper.querySelectorAll('[type=\"checkbox\"]');\r\n const filtersSelectedCount = filtersWrapper.querySelector('#filters-selected-count');\r\n\r\n const productGrid = document.querySelector(\".menu-page-products-grid\");\r\n\r\n\r\n if (!productGrid || !filtersWrapper || !filterButtons) return;\r\n\r\n let allFilters = [];\r\n\r\n function closeModal() {\r\n window.SD_CloseModal(filtersModal); // there is also window.SD_OpenModal\r\n }\r\n\r\n function showLoader() {\r\n filtersModalBody.classList.add('loading')\r\n }\r\n function hideLoader() {\r\n filtersModalBody.classList.remove('loading')\r\n }\r\n\r\n function getQueryString() {\r\n const formData = new FormData(document.getElementById('product-filters'));\r\n return new URLSearchParams(formData).toString();\r\n }\r\n\r\n function makeQuery(queryString) {\r\n const siteUrl = window.SD_SITE_URL ?? 'https://wa-prod-sushidaily-hkeqaebfdwftggam.uksouth-01.azurewebsites.net/';\r\n return fetch(`${siteUrl}umbraco/api/productsapi/filter?${queryString}`, {\r\n method: 'GET', // *GET, POST, PUT, DELETE, etc.\r\n })\r\n .then((res) => {\r\n return res.json()\r\n })\r\n }\r\n\r\n\r\n function hideShowProducts(products) {\r\n if (!products) return;\r\n\r\n products.forEach(function ({ Id, Visible }) {\r\n const product = productGrid.querySelector(`[data-id='${Id}']`);\r\n\r\n if (!product) return;\r\n \r\n product.classList.toggle('hidden', !Visible)\r\n })\r\n }\r\n\r\n // click show filter buttons\r\n // show filters\r\n // click filter adds to array\r\n // apply makes the query\r\n filtersWrapper.addEventListener(\"click\", (e) => {\r\n const element = e.target;\r\n const { name, value, type } = element;\r\n const isCheckbox = type === 'checkbox'\r\n const isClearButton = name === 'clear'\r\n const isApplyButton = name === 'apply'\r\n\r\n if (!isCheckbox && !isClearButton && !isApplyButton) return;\r\n\r\n if (isApplyButton) {\r\n closeModal()\r\n return;\r\n }\r\n\r\n if (isClearButton) {\r\n // build up query params\r\n const checked = filtersWrapper.querySelectorAll('[type=\"checkbox\"]:checked');\r\n if (checked) {\r\n [...checked].forEach((checkbox) => {\r\n checkbox.checked = false;\r\n })\r\n }\r\n filtersSelectedCount.innerHTML = 0;\r\n allFilters = [];\r\n closeModal();\r\n }\r\n\r\n // show loader\r\n showLoader()\r\n\r\n // make query\r\n makeQuery(getQueryString()).then((resData) => {\r\n if (resData === null) {\r\n console.error('data is null')\r\n return\r\n }\r\n\r\n const { collections, types, allergens, results } = resData;\r\n const filters = { collections, types, allergens }\r\n\r\n // select or deselect and disabled filter button checkboxes\r\n for (let key in filters) {\r\n filters[key].forEach(function (filter) {\r\n const checkbox = filtersWrapper.querySelector(`[value=\"${filter.id}\"`)\r\n if (!checkbox) return;\r\n\r\n const checkboxParent = checkbox.parentNode;\r\n const isDisabled = filter.results === 0\r\n\r\n if (key !== 'allergens') {\r\n if (isDisabled) checkboxParent.classList.add('disabled');\r\n if (!isDisabled) checkboxParent.classList.remove('disabled');\r\n }\r\n\r\n if (checkbox.checked) checkboxParent.classList.add('selected');\r\n if (!checkbox.checked) checkboxParent.classList.remove('selected');\r\n })\r\n }\r\n\r\n if (isCheckbox) {\r\n if (element.checked) {\r\n allFilters.push({ name, value })\r\n } else {\r\n allFilters = allFilters.filter((filter) => filter.value !== value)\r\n }\r\n }\r\n\r\n // update filter count\r\n filtersSelectedCount.innerHTML = allFilters.length\r\n\r\n hideShowProducts(results);\r\n hideLoader()\r\n }).catch((err) => {\r\n hideLoader()\r\n // undo check if fails\r\n element.checked = false;\r\n console.error(err)\r\n });\r\n\r\n });\r\n}","export default function searchOverlayUi() {\r\n const searchModal = document.querySelector(\"#search-modal\");\r\n if (!searchModal) return;\r\n\r\n const searchModalBody = searchModal.querySelector(\".modal-body\");\r\n const searchModalInput = document.querySelector(\"#search-modal-input\");\r\n const searchModalInputTrigger = document.querySelector(\"#search-modal-button\");\r\n const searchResultsTitle = document.querySelector(\".search-result-title-query\");\r\n const searchResultsCount = document.querySelector(\".search-results-count-number\");\r\n\r\n const searchInput = document.querySelector('#search-products-input');\r\n const searchInputTrigger = document.querySelector(\"#search-products-button\");\r\n\r\n if (!searchInput || !searchModalInput || !searchInputTrigger) return\r\n\r\n const setLoading = function (bool) {\r\n searchModalBody.classList.toggle('loading', bool)\r\n }\r\n\r\n const makeQuery = function (query) {\r\n const siteUrl = window.SD_SITE_URL ?? 'https://www.sushidaily.com/';\r\n let culture = window.SD_CULTURE_INFO.urlLanguageSegment;\r\n\r\n if (!culture)\r\n culture = 'gb-en';\r\n\r\n return fetch(`${siteUrl}umbraco/api/productsapi/names?culture=${culture}&name=${query}`, {\r\n method: 'GET', // *GET, POST, PUT, DELETE, etc.\r\n })\r\n .then((res) => {\r\n return res.json()\r\n })\r\n }\r\n\r\n const hideShowProducts = function (products) {\r\n let visibleCount = 0\r\n\r\n // show all products\r\n if (!products || products.length === 0) {\r\n const cards = document.querySelectorAll(`.search-result-category-items .product-grid-item`);\r\n cards.forEach((product) => {\r\n product.classList.toggle('hidden', true);\r\n })\r\n }\r\n\r\n // hide or show products base on api response\r\n products.forEach(({ Id, Visible }) => {\r\n const product = document.querySelector(`.search-result-category-items [data-id='${Id}']`);\r\n if (!product) return;\r\n\r\n visibleCount += Visible ? 1 : 0\r\n\r\n product.classList.toggle('hidden', !Visible)\r\n })\r\n\r\n // hide or show empty categories\r\n const categoriesEl = document.querySelectorAll('.search-result-category');\r\n if (categoriesEl && categoriesEl.length > 0) {\r\n categoriesEl.forEach((categoryEl)=> {\r\n const categoriesItems = categoryEl.querySelector('.search-result-category-items');\r\n const visibleChildren = [...categoriesItems.children].filter((productEl)=> !productEl.classList.contains('hidden'))\r\n\r\n categoryEl.classList.toggle('hidden', visibleChildren.length === 0)\r\n })\r\n }\r\n\r\n // update visual count\r\n searchResultsCount.innerHTML = visibleCount\r\n }\r\n\r\n const searchQuery = async function () {\r\n setLoading(true)\r\n searchResultsTitle.innerHTML = searchModalInput.value\r\n\r\n makeQuery(searchModalInput.value).then((data) => {\r\n hideShowProducts(data.results)\r\n setLoading(false)\r\n }).catch((err) => {\r\n setLoading(false)\r\n console.error(err)\r\n })\r\n }\r\n\r\n const showSearchOverlay = (e) => {\r\n if (e) e.preventDefault();\r\n window.SD_OpenModal(searchModal)\r\n\r\n searchModalInput.value = searchInput.value\r\n searchModalInput.focus()\r\n }\r\n\r\n searchInput.addEventListener('keydown', (e) => {\r\n const isEnter = e.keyCode === 13\r\n if (isEnter) {\r\n searchInput.blur() // useful for mobile to close keyboard on search\r\n showSearchOverlay()\r\n searchQuery()\r\n }\r\n })\r\n\r\n searchInputTrigger.addEventListener('click', () => {\r\n showSearchOverlay()\r\n searchQuery()\r\n searchInput.blur()\r\n })\r\n\r\n searchModalInput.addEventListener('keydown', (e) => {\r\n const isEnter = e.keyCode === 13\r\n if (isEnter) {\r\n searchQuery()\r\n searchModalInput.blur();\r\n }\r\n })\r\n\r\n searchModalInputTrigger.addEventListener('click', () => {\r\n searchQuery()\r\n searchModalInput.blur();\r\n })\r\n}","import menuFilters from './menu-filters'\r\nimport menuSearch from './menu-search'\r\n\r\n\r\nwindow.addEventListener(\"load\", function() {\r\n menuSearch()\r\n menuFilters()\r\n})","// extracted by mini-css-extract-plugin\nexport {};"],"names":["menuFilters","filtersModal","document","querySelector","filtersModalBody","filtersWrapper","filterButtons","querySelectorAll","filtersSelectedCount","productGrid","allFilters","closeModal","window","SD_CloseModal","showLoader","classList","add","hideLoader","remove","getQueryString","formData","FormData","getElementById","URLSearchParams","toString","makeQuery","queryString","siteUrl","SD_SITE_URL","fetch","method","then","res","json","hideShowProducts","products","forEach","Id","Visible","product","toggle","addEventListener","e","element","target","name","value","type","isCheckbox","isClearButton","isApplyButton","checked","checkbox","innerHTML","resData","console","error","collections","types","allergens","results","filters","key","filter","id","checkboxParent","parentNode","isDisabled","push","length","catch","err","searchOverlayUi","searchModal","searchModalBody","searchModalInput","searchModalInputTrigger","searchResultsTitle","searchResultsCount","searchInput","searchInputTrigger","setLoading","bool","query","culture","SD_CULTURE_INFO","urlLanguageSegment","visibleCount","cards","categoriesEl","categoryEl","categoriesItems","visibleChildren","children","productEl","contains","searchQuery","data","showSearchOverlay","preventDefault","SD_OpenModal","focus","isEnter","keyCode","blur","menuSearch"],"sourceRoot":""}