{ "version": 3, "sources": ["../../../search/search.ts"], "sourcesContent": ["// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0-or-later\nimport {\n d,\n e as getElementById,\n get,\n PopStateHandlers,\n setURLParam,\n} from \"@utils/utils.js\";\n\nconst resultsList = getElementById(\"search-results\")!;\nconst searchForm = getElementById(\"search-form\") as HTMLFormElement;\nconst searchInput = getElementById(\"search-input\") as HTMLInputElement;\n\ninterface Result {\n score: number;\n title: string;\n url: string;\n description: string;\n}\n\nfunction displayResults(results: Result[]) {\n resultsList.innerHTML = \"\";\n for (const result of results) {\n const resultElement = d.createElement(\"li\");\n resultElement.setAttribute(\"score\", String(result.score));\n resultElement.innerHTML = `` +\n `${result.title} ${result.description}`;\n resultsList.appendChild(resultElement);\n }\n}\n\nPopStateHandlers[\"search\"] = (event: PopStateEvent) => {\n const state = event.state as { query: string; results: Result[] };\n searchInput.value = state.query;\n displayResults(state.results);\n};\n\nsearchForm.onsubmit = (e: Event) => {\n e.preventDefault();\n return get(\"/api/suche\", \"q=\" + searchInput.value, (data) => {\n displayResults(data as Result[]);\n setURLParam(\n \"q\",\n searchInput.value,\n {\n query: searchInput.value,\n results: data as Result[],\n },\n \"search\",\n true,\n );\n });\n};\n"], "mappings": "AAAA;AACA,OACI,KAAAA,EACA,KAAKC,EACL,OAAAC,EACA,oBAAAC,EACA,eAAAC,MACG,+CAEP,IAAMC,EAAcJ,EAAe,gBAAgB,EAC7CK,EAAaL,EAAe,aAAa,EACzCM,EAAcN,EAAe,cAAc,EASjD,SAASO,EAAeC,EAAmB,CACvCJ,EAAY,UAAY,GACxB,QAAWK,KAAUD,EAAS,CAC1B,IAAME,EAAgBX,EAAE,cAAc,IAAI,EAC1CW,EAAc,aAAa,QAAS,OAAOD,EAAO,KAAK,CAAC,EACxDC,EAAc,UAAY,YAAY,OAAAD,EAAO,IAAG,MAC5C,GAAG,OAAAA,EAAO,MAAK,SAAQ,OAAAA,EAAO,aAClCL,EAAY,YAAYM,CAAa,CACzC,CACJ,CAEAR,EAAiB,OAAaS,GAAyB,CACnD,IAAMC,EAAQD,EAAM,MACpBL,EAAY,MAAQM,EAAM,MAC1BL,EAAeK,EAAM,OAAO,CAChC,EAEAP,EAAW,SAAYQ,IACnBA,EAAE,eAAe,EACVZ,EAAI,aAAc,KAAOK,EAAY,MAAQQ,GAAS,CACzDP,EAAeO,CAAgB,EAC/BX,EACI,IACAG,EAAY,MACZ,CACI,MAAOA,EAAY,MACnB,QAASQ,CACb,EACA,SACA,EACJ,CACJ,CAAC", "names": ["d", "getElementById", "get", "PopStateHandlers", "setURLParam", "resultsList", "searchForm", "searchInput", "displayResults", "results", "result", "resultElement", "event", "state", "e", "data"] }