search_interface/node_modules/.cache/babel-loader/f60aecacc6f236aefbebcc0105128742bb260138cd6785aa3466489072a93ee0.json
2025-04-10 18:12:05 +09:00

1 line
15 KiB
JSON

{"ast":null,"code":"var _jsxFileName = \"/home/magh/Documents/landing_page/src/ResultsPage.jsx\",\n _s = $RefreshSig$();\nimport React, { useEffect, useState } from 'react';\nimport { useLocation, Link } from 'react-router-dom';\nimport './App.css';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nfunction ResultsPage() {\n _s();\n const [results, setResults] = useState([]);\n const [loading, setLoading] = useState(true);\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const query = searchParams.get('q') || '';\n const category = searchParams.get('cat') || 'science';\n const sourceMap = {\n science: 'https://science.tsugutsugugo.com/yacysearch.json',\n philosophy: 'https://sophos.tsugutsugugo.com/yacysearch.json',\n tech: 'https://tech.tsugutsugugo.com/yacysearch.json',\n discover: 'https://web.tsugutsugugo.com/yacysearch.json'\n };\n useEffect(() => {\n const fetchResults = async () => {\n const resultsPerPage = 10;\n const totalPages = 5;\n let allResults = [];\n const apiUrl = sourceMap[category];\n for (let page = 0; page < totalPages; page++) {\n const startRecord = page * resultsPerPage;\n try {\n var _data$channels, _data$channels$;\n const response = await fetch(`${apiUrl}?query=${encodeURIComponent(query)}&resource=global&urlmaskfilter=.*&prefermaskfilter=&nav=all&maximumRecords=${resultsPerPage}&startRecord=${startRecord}`);\n if (!response.ok) continue;\n const data = await response.json();\n const items = ((_data$channels = data.channels) === null || _data$channels === void 0 ? void 0 : (_data$channels$ = _data$channels[0]) === null || _data$channels$ === void 0 ? void 0 : _data$channels$.items) || [];\n allResults = [...allResults, ...items];\n } catch (error) {\n console.error(\"Fetching results failed:\", error);\n }\n }\n setResults(allResults);\n setLoading(false);\n };\n fetchResults();\n }, [query, category]);\n return /*#__PURE__*/_jsxDEV(\"div\", {\n className: \"App\",\n children: [/*#__PURE__*/_jsxDEV(\"header\", {\n className: \"header-bar\",\n children: /*#__PURE__*/_jsxDEV(Link, {\n to: \"/\",\n children: /*#__PURE__*/_jsxDEV(\"img\", {\n src: \"/header.png\",\n alt: \"Header\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 58,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 57,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 56,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(\"main\", {\n className: \"main-content\",\n children: [/*#__PURE__*/_jsxDEV(\"div\", {\n id: \"tagline\",\n children: [\"Search Results for \", /*#__PURE__*/_jsxDEV(\"strong\", {\n children: query\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 62,\n columnNumber: 46\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 62,\n columnNumber: 9\n }, this), loading ? /*#__PURE__*/_jsxDEV(\"p\", {\n children: \"Loading results...\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 65,\n columnNumber: 11\n }, this) : results.length > 0 ? /*#__PURE__*/_jsxDEV(\"ul\", {\n style: {\n textAlign: 'left',\n marginTop: '20px',\n listStyleType: 'none'\n },\n children: results.map((item, idx) => /*#__PURE__*/_jsxDEV(\"li\", {\n style: {\n marginBottom: '20px'\n },\n children: [/*#__PURE__*/_jsxDEV(\"a\", {\n href: item.link,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n style: {\n color: 'blue',\n fontSize: '1.1em',\n textDecoration: 'none',\n fontWeight: 'bold'\n },\n children: item.title\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 70,\n columnNumber: 17\n }, this), /*#__PURE__*/_jsxDEV(\"p\", {\n dangerouslySetInnerHTML: {\n __html: item.description\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 73,\n columnNumber: 17\n }, this), /*#__PURE__*/_jsxDEV(\"a\", {\n href: `https://web.archive.org/web/*/${item.link}`,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n style: {\n color: '#888',\n fontSize: '0.9em'\n },\n children: \"Cache\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 74,\n columnNumber: 17\n }, this)]\n }, idx, true, {\n fileName: _jsxFileName,\n lineNumber: 69,\n columnNumber: 15\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 67,\n columnNumber: 11\n }, this) : /*#__PURE__*/_jsxDEV(\"p\", {\n children: \"No search results found.\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 86,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 61,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(\"footer\", {\n className: \"footer\",\n children: [/*#__PURE__*/_jsxDEV(\"a\", {\n href: \"https://git.tsugutsugugo.com/explore/repos\",\n children: \"Source\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 90,\n columnNumber: 9\n }, this), \" |\", ' ', /*#__PURE__*/_jsxDEV(\"a\", {\n href: \"https://docs.tsugutsugugo.com/\",\n children: \"Docs\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 91,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 89,\n columnNumber: 7\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 55,\n columnNumber: 5\n }, this);\n}\n_s(ResultsPage, \"tisgxuaUHm2G07XYn4AewBafuwY=\", false, function () {\n return [useLocation];\n});\n_c = ResultsPage;\nexport default ResultsPage;\nvar _c;\n$RefreshReg$(_c, \"ResultsPage\");","map":{"version":3,"names":["React","useEffect","useState","useLocation","Link","jsxDEV","_jsxDEV","ResultsPage","_s","results","setResults","loading","setLoading","location","searchParams","URLSearchParams","search","query","get","category","sourceMap","science","philosophy","tech","discover","fetchResults","resultsPerPage","totalPages","allResults","apiUrl","page","startRecord","_data$channels","_data$channels$","response","fetch","encodeURIComponent","ok","data","json","items","channels","error","console","className","children","to","src","alt","fileName","_jsxFileName","lineNumber","columnNumber","id","length","style","textAlign","marginTop","listStyleType","map","item","idx","marginBottom","href","link","target","rel","color","fontSize","textDecoration","fontWeight","title","dangerouslySetInnerHTML","__html","description","_c","$RefreshReg$"],"sources":["/home/magh/Documents/landing_page/src/ResultsPage.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { useLocation, Link } from 'react-router-dom';\nimport './App.css';\n\nfunction ResultsPage() {\n const [results, setResults] = useState([]);\n const [loading, setLoading] = useState(true);\n const location = useLocation();\n\n const searchParams = new URLSearchParams(location.search);\n const query = searchParams.get('q') || '';\n const category = searchParams.get('cat') || 'science';\n\n const sourceMap = {\n science: 'https://science.tsugutsugugo.com/yacysearch.json',\n philosophy: 'https://sophos.tsugutsugugo.com/yacysearch.json',\n tech: 'https://tech.tsugutsugugo.com/yacysearch.json',\n discover: 'https://web.tsugutsugugo.com/yacysearch.json',\n };\n\n useEffect(() => {\n const fetchResults = async () => {\n const resultsPerPage = 10;\n const totalPages = 5;\n let allResults = [];\n\n const apiUrl = sourceMap[category];\n\n for (let page = 0; page < totalPages; page++) {\n const startRecord = page * resultsPerPage;\n try {\n const response = await fetch(\n `${apiUrl}?query=${encodeURIComponent(query)}&resource=global&urlmaskfilter=.*&prefermaskfilter=&nav=all&maximumRecords=${resultsPerPage}&startRecord=${startRecord}`\n );\n\n if (!response.ok) continue;\n\n const data = await response.json();\n const items = data.channels?.[0]?.items || [];\n\n allResults = [...allResults, ...items];\n } catch (error) {\n console.error(\"Fetching results failed:\", error);\n }\n }\n\n setResults(allResults);\n setLoading(false);\n };\n\n fetchResults();\n }, [query, category]);\n\n return (\n <div className=\"App\">\n <header className=\"header-bar\">\n <Link to=\"/\">\n <img src=\"/header.png\" alt=\"Header\" />\n </Link>\n </header>\n <main className=\"main-content\">\n <div id=\"tagline\">Search Results for <strong>{query}</strong></div>\n\n {loading ? (\n <p>Loading results...</p>\n ) : results.length > 0 ? (\n <ul style={{ textAlign: 'left', marginTop: '20px', listStyleType: 'none' }}>\n {results.map((item, idx) => (\n <li key={idx} style={{ marginBottom: '20px' }}>\n <a href={item.link} target=\"_blank\" rel=\"noopener noreferrer\" style={{ color: 'blue', fontSize: '1.1em', textDecoration: 'none', fontWeight: 'bold' }}>\n {item.title}\n </a>\n <p dangerouslySetInnerHTML={{ __html: item.description }} />\n <a\n href={`https://web.archive.org/web/*/${item.link}`}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{ color: '#888', fontSize: '0.9em' }}\n >\n Cache\n </a>\n </li>\n ))}\n </ul>\n ) : (\n <p>No search results found.</p>\n )}\n </main>\n <footer className=\"footer\">\n <a href=\"https://git.tsugutsugugo.com/explore/repos\">Source</a> |{' '}\n <a href=\"https://docs.tsugutsugugo.com/\">Docs</a>\n </footer>\n </div>\n );\n}\n\nexport default ResultsPage;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}