{"version":3,"file":"CNLAdiEJ.js","sources":["../../../../src/components/layout/header/components/searchbar/useSearchbar.ts"],"sourcesContent":["import { useStorage } from '@vueuse/core';\nimport { useSecureSessionPost } from '~/composables/dataFetching/genericFetchers';\nimport { handleLoadingError } from '~/utils/handleLoadingError';\n\nexport function useSearchbar() {\n const searchHistory = useStorage('searchhistory', []);\n const site = useSiteIdent();\n\n async function searchSuggestions(searchInput: string) {\n try {\n const result = await useSecureSessionPost(\n `/api/${site}/search/suggestions`,\n { search: searchInput },\n );\n if (!result?.suggestions) {\n return null;\n }\n return result;\n } catch (e) {\n handleLoadingError(e);\n return null;\n }\n }\n\n function addSearchQueryToSearchHistory(searchInput: string): void {\n const trimedSearchInput = searchInput.trim();\n const lowercaseSearchHistory = searchHistory.value.map(function (value) {\n return value.toLowerCase();\n });\n\n const index = lowercaseSearchHistory.indexOf(\n trimedSearchInput.toLowerCase(),\n );\n if (index > -1) searchHistory.value.splice(index, 1);\n searchHistory.value.push(trimedSearchInput);\n navigateTo(`/shop/search/${encodeURIComponent(trimedSearchInput)}`);\n }\n\n function clearSearchHistory(): void {\n searchHistory.value = [];\n }\n\n return {\n searchHistory,\n addSearchQueryToSearchHistory,\n clearSearchHistory,\n searchSuggestions,\n };\n}\n"],"names":["useSearchbar","searchHistory","useStorage","site","useSiteIdent","searchSuggestions","searchInput","result","useSecureSessionPost","handleLoadingError","addSearchQueryToSearchHistory","trimedSearchInput","index","value","navigateTo","clearSearchHistory"],"mappings":"gEAIO,SAASA,GAAe,CAC7B,MAAMC,EAAgBC,EAAW,gBAAiB,CAAE,CAAA,EAC9CC,EAAOC,IAEb,eAAeC,EAAkBC,EAAqB,CAChD,GAAA,CACF,MAAMC,EAAS,MAAMC,EACnB,QAAQL,CAAI,sBACZ,CAAE,OAAQG,CAAY,CAAA,EAEpB,OAACC,GAAA,MAAAA,EAAQ,YAGNA,EAFE,WAGF,EAAG,CACV,OAAAE,EAAmB,CAAC,EACb,IACT,CACF,CAEA,SAASC,EAA8BJ,EAA2B,CAC1D,MAAAK,EAAoBL,EAAY,OAKhCM,EAJyBX,EAAc,MAAM,IAAI,SAAUY,EAAO,CACtE,OAAOA,EAAM,aAAY,CAC1B,EAEoC,QACnCF,EAAkB,YAAY,CAAA,EAE5BC,EAAQ,IAAkBX,EAAA,MAAM,OAAOW,EAAO,CAAC,EACrCX,EAAA,MAAM,KAAKU,CAAiB,EAC1CG,EAAW,gBAAgB,mBAAmBH,CAAiB,CAAC,EAAE,CACpE,CAEA,SAASI,GAA2B,CAClCd,EAAc,MAAQ,EACxB,CAEO,MAAA,CACL,cAAAA,EACA,8BAAAS,EACA,mBAAAK,EACA,kBAAAV,CAAA,CAEJ"}