{ "version": 3, "sources": ["../../../Vettvangur.Heilsuvera/src/scripts/search/search.ts"], "sourcesContent": ["import { debounce } from \"throttle-debounce-ts\";\n\nconst search = {\n\tinit: (): void => {\n\t\tconst headerSearchForm = (\n\t\t\tdocument.querySelector(\"#search\")\n\t\t);\n\t\tconst headerSearchResults = (\n\t\t\tdocument.querySelector(\".search-overlay\")\n\t\t);\n\t\tconst headerSearchItems = (\n\t\t\tdocument.querySelector(\".search-overlay__searchItems\")\n\t\t);\n\t\tsearch.headerSearch(\n\t\t\theaderSearchForm,\n\t\t\theaderSearchResults,\n\t\t\theaderSearchItems,\n\t\t);\n\t\tsearch.input(headerSearchForm, headerSearchResults);\n\n\t\tdocument.addEventListener(\"click\", (e) => {\n\t\t\tconst isClickInsideHeaderSearchResults = headerSearchResults?.contains(\n\t\t\t\te.target as Node,\n\t\t\t);\n\t\t\tconst isButtonClickedHeaderSearchResults = headerSearchForm?.contains(\n\t\t\t\te.target as Node,\n\t\t\t);\n\t\t\t// rome-ignore lint/complexity/useSimplifiedLogicExpression: \n\t\t\tif (\n\t\t\t\t!isClickInsideHeaderSearchResults &&\n\t\t\t\t!isButtonClickedHeaderSearchResults\n\t\t\t) {\n\t\t\t\theaderSearchResults?.classList.remove(\"open\");\n\t\t\t}\n\t\t});\n\t},\n\n\tinput: (searchForm, searchResults): void => {\n\t\tsearchForm?.addEventListener(\"focus\", () => {\n\t\t\tsearchResults?.classList.add(\"open\");\n\t\t});\n\n\t\t//searchForm?.addEventListener('blur', (e) => {\n\t\t// searchResults?.classList.remove('open');\n\t\t//});\n\t},\n\n\theaderSearch: (searchForm, searchResults, searchItems): void => {\n\t\tconst debouncedSearch = debounce(500, handleSearch); // Set your desired debounce delay here (in milliseconds)\n\n\t\tsearchForm?.addEventListener(\"input\", (e) => debouncedSearch(e));\n\t\tfunction handleSearch(e) {\n\t\t\tconst target = e.target as HTMLInputElement;\n\t\t\tconst value = target?.value;\n\t\t\tconst culture =\n\t\t\t\tdocument.querySelector(\"#culture\")?.value;\n\t\t\tif (value.length > 2) {\n\t\t\t\tconst allResults = document.querySelectorAll(\".search__allResults\");\n\t\t\t\tif (allResults != null) {\n\t\t\t\t\tfor (let i = 0; i < allResults.length; i++) {\n\t\t\t\t\t\tconst allResult = allResults[i];\n\t\t\t\t\t\tallResult.href = `${allResult.href.split(\"=\")[0]}=${value}`;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst xhr = new XMLHttpRequest();\n\n\t\t\t\txhr.open(\n\t\t\t\t\t\"GET\",\n\t\t\t\t\t`/Umbraco/Surface/Search/Search?query=${value}&limit=0&culture=${culture}`,\n\t\t\t\t);\n\t\t\t\txhr.setRequestHeader(\n\t\t\t\t\t\"Content-Type\",\n\t\t\t\t\t\"application/x-www-form-urlencoded\",\n\t\t\t\t);\n\t\t\t\txhr.responseType = \"json\";\n\n\t\t\t\txhr.onload = () => {\n\t\t\t\t\tlet resp = xhr.response;\n\n\t\t\t\t\tif (typeof resp === \"string\") {\n\t\t\t\t\t\tresp = JSON.parse(resp);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (xhr.status === 200 && resp.success) {\n\t\t\t\t\t\tlet dataLength = resp.data.length;\n\n\t\t\t\t\t\tif (dataLength > 4) {\n\t\t\t\t\t\t\tdataLength = 4;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet html = `
0 ? \" has-data\" : \"\"\n\t\t\t\t\t\t}\">\u00DEa\u00F0 fundust ${\n\t\t\t\t\t\t\tresp.data.length\n\t\t\t\t\t\t} leitarni\u00F0urst\u00F6\u00F0ur fyrir \"${value}\"
`;\n\n\t\t\t\t\t\tfor (let i = 0; i < dataLength; i++) {\n\t\t\t\t\t\t\tconst data = resp.data[i];\n\n\t\t\t\t\t\t\thtml += `\n \n
${data.name}
\n
${data.breadcrumbs}
\n `;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsearchResults?.classList.add(\"open\", \"showDialog\");\n\n\t\t\t\t\t\tif (searchItems != null) {\n\t\t\t\t\t\t\tsearchItems.innerHTML = html;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\txhr.send();\n\t\t\t} else {\n\t\t\t\tsearchResults?.classList.remove(\"showDialog\");\n\t\t\t}\n\t\t}\n\t},\n\n\tquickSearch: (): void => {},\n};\n\nexport default search;\n"], "mappings": "4EAEA,IAAMA,EAAS,CACd,KAAM,IAAY,CACjB,IAAMC,EACL,SAAS,cAAc,SAAS,EAE3BC,EACL,SAAS,cAAc,iBAAiB,EAEnCC,EACL,SAAS,cAAc,8BAA8B,EAEtDH,EAAO,aACNC,EACAC,EACAC,CACD,EACAH,EAAO,MAAMC,EAAkBC,CAAmB,EAElD,SAAS,iBAAiB,QAAUE,GAAM,CACzC,IAAMC,EAAmCH,GAAA,YAAAA,EAAqB,SAC7DE,EAAE,QAEGE,EAAqCL,GAAA,YAAAA,EAAkB,SAC5DG,EAAE,QAIF,CAACC,GACD,CAACC,IAEDJ,GAAA,MAAAA,EAAqB,UAAU,OAAO,QAExC,CAAC,CACF,EAEA,MAAO,CAACK,EAAYC,IAAwB,CAC3CD,GAAA,MAAAA,EAAY,iBAAiB,QAAS,IAAM,CAC3CC,GAAA,MAAAA,EAAe,UAAU,IAAI,OAC9B,EAKD,EAEA,aAAc,CAACD,EAAYC,EAAeC,IAAsB,CAC/D,IAAMC,EAAkBC,EAAS,IAAKC,CAAY,EAElDL,GAAA,MAAAA,EAAY,iBAAiB,QAAUH,GAAMM,EAAgBN,CAAC,GAC9D,SAASQ,EAAaR,EAAG,CAnD3B,IAAAS,EAoDG,IAAMC,EAASV,EAAE,OACXW,EAAQD,GAAA,YAAAA,EAAQ,MAChBE,GACLH,EAAA,SAAS,cAAgC,UAAU,IAAnD,YAAAA,EAAsD,MACvD,GAAIE,EAAM,OAAS,EAAG,CACrB,IAAME,EAAa,SAAS,iBAAiB,qBAAqB,EAClE,GAAIA,GAAc,KACjB,QAASN,EAAI,EAAGA,EAAIM,EAAW,OAAQN,IAAK,CAC3C,IAAMO,EAA+BD,EAAWN,CAAC,EACjDO,EAAU,KAAO,GAAGA,EAAU,KAAK,MAAM,GAAG,EAAE,CAAC,CAAC,IAAIH,CAAK,EAC1D,CAGD,IAAMI,EAAM,IAAI,eAEhBA,EAAI,KACH,MACA,wCAAwCJ,CAAK,oBAAoBC,CAAO,EACzE,EACAG,EAAI,iBACH,eACA,mCACD,EACAA,EAAI,aAAe,OAEnBA,EAAI,OAAS,IAAM,CAClB,IAAIC,EAAOD,EAAI,SAMf,GAJI,OAAOC,GAAS,WACnBA,EAAO,KAAK,MAAMA,CAAI,GAGnBD,EAAI,SAAW,KAAOC,EAAK,QAAS,CACvC,IAAIC,EAAaD,EAAK,KAAK,OAEvBC,EAAa,IAChBA,EAAa,GAGd,IAAIC,EAAO,mCACVF,EAAK,KAAK,OAAS,EAAI,YAAc,EACtC,uBACCA,EAAK,KAAK,MACX,kEAAyDL,CAAK,iBAE9D,QAASJ,EAAI,EAAGA,EAAIU,EAAYV,IAAK,CACpC,IAAMY,EAAOH,EAAK,KAAKT,CAAC,EAExBW,GAAQ;AAAA,2BACYC,EAAK,GAAG;AAAA,0DACuBA,EAAK,IAAI;AAAA,2DACRA,EAAK,WAAW;AAAA,uBAErE,CAEAf,GAAA,MAAAA,EAAe,UAAU,IAAI,OAAQ,cAEjCC,GAAe,OAClBA,EAAY,UAAYa,EAE1B,CAED,EAEAH,EAAI,KAAK,CACV,MACCX,GAAA,MAAAA,EAAe,UAAU,OAAO,aAElC,CACD,EAEA,YAAa,IAAY,CAAC,CAC3B,EAEOgB,EAAQxB", "names": ["search", "headerSearchForm", "headerSearchResults", "headerSearchItems", "e", "isClickInsideHeaderSearchResults", "isButtonClickedHeaderSearchResults", "searchForm", "searchResults", "searchItems", "debouncedSearch", "i", "handleSearch", "_a", "target", "value", "culture", "allResults", "allResult", "xhr", "resp", "dataLength", "html", "data", "search_default"] }