import { ASTRO_VERSION } from "../../core/constants.js"; import { AstroError, AstroErrorData } from "../../core/errors/index.js"; function createAstroGlobFn() { const globHandler = (importMetaGlobResult) => { if (typeof importMetaGlobResult === "string") { throw new AstroError({ ...AstroErrorData.AstroGlobUsedOutside, message: AstroErrorData.AstroGlobUsedOutside.message(JSON.stringify(importMetaGlobResult)) }); } let allEntries = [...Object.values(importMetaGlobResult)]; if (allEntries.length === 0) { throw new AstroError({ ...AstroErrorData.AstroGlobNoMatch, message: AstroErrorData.AstroGlobNoMatch.message(JSON.stringify(importMetaGlobResult)) }); } return Promise.all(allEntries.map((fn) => fn())); }; return globHandler; } function createAstro(site) { return { site: site ? new URL(site) : void 0, generator: `Astro v${ASTRO_VERSION}`, glob: createAstroGlobFn() }; } export { createAstro };