async function searchResults(query) { const encodeQuery = keyword => encodeURIComponent(keyword); const searchBaseUrl = "https://1movies.bz/browser?keyword="; const baseUrl = "https://1movies.bz"; const posterHrefRegex = /href="([^"]*)" class="poster"/g; const titleRegex = /class="title" href="[^"]*">([^<]*) { const results = []; const posterMatches = [...htmlText.matchAll(posterHrefRegex)]; const titleMatches = [...htmlText.matchAll(titleRegex)]; const imageMatches = [...htmlText.matchAll(imageRegex)]; const minLength = Math.min(posterMatches.length, titleMatches.length, imageMatches.length); for (let index = 0; index < minLength; index++) { const href = posterMatches[index][1]; const fullHref = href.startsWith("http") ? href : baseUrl + href; const imageSrc = imageMatches[index][1]; const title = titleMatches[index][1]; const cleanTitle = decodeHtmlEntities(title); if (fullHref && imageSrc && cleanTitle) { results.push({ href: fullHref, image: "https://deno-proxies-sznvnpnxwhbv.deno.dev/?url=" + encodeURIComponent(imageSrc), title: cleanTitle }); } } return results; }; try { const encodedQuery = encodeQuery(query); const urls = [ `${searchBaseUrl}${encodedQuery}`, `${searchBaseUrl}${encodedQuery}&page=2`, `${searchBaseUrl}${encodedQuery}&page=3` ]; const responses = await Promise.all(urls.map(url => fetchv2("https://deno-proxies-sznvnpnxwhbv.deno.dev/?url=" + encodeURIComponent(url)))); const htmlTexts = await Promise.all(responses.map(response => response.text())); const allResults = []; htmlTexts.forEach(htmlText => { const pageResults = extractResultsFromHTML(htmlText); allResults.push(...pageResults); }); return JSON.stringify(allResults); } catch (error) { return JSON.stringify([{ href: "", image: "", title: "Search failed: " + error.message }]); } } async function extractDetails(url) { try { const response = await fetchv2(url); const htmlText = await response.text(); const descriptionMatch = (/