import { lookup } from "./vendor/image-size/lookup.js"; async function probe(url) { const response = await fetch(url); if (!response.body || !response.ok) { throw new Error("Failed to fetch image"); } const reader = response.body.getReader(); let done, value; let accumulatedChunks = new Uint8Array(); while (!done) { const readResult = await reader.read(); done = readResult.done; if (done) break; if (readResult.value) { value = readResult.value; let tmp = new Uint8Array(accumulatedChunks.length + value.length); tmp.set(accumulatedChunks, 0); tmp.set(value, accumulatedChunks.length); accumulatedChunks = tmp; try { const dimensions = lookup(accumulatedChunks); if (dimensions) { await reader.cancel(); return dimensions; } } catch (error) { } } } throw new Error("Failed to parse the size"); } export { probe };