import { encode } from "./deps/base64.ts";import { checkDenoVersion, ImportMap, readDenoConfig } from "./core/utils.ts";
export async function getArgs( lumeArgs: string[], quiet: boolean,): Promise<[string[], string[]]> { const denoArgs = [ "--unstable", "-A", ];
if (quiet) { denoArgs.push("--quiet"); }
const denoConfig = await readDenoConfig(); const { file, config } = denoConfig || {};
if (file) { denoArgs.push(`--config=${file}`); }
if (!config?.importMap) { const importMap: ImportMap = { imports: { "lume/": import.meta.resolve("./"), }, }; const dataUrl = `data:application/json;base64,${ encode(JSON.stringify(importMap)) }`; denoArgs.push(`--import-map=${dataUrl}`); }
return [lumeArgs, denoArgs];}
export default async function main(args: string[]) { const quiet = args.includes("--quiet");
checkDenoVersion();
const [lumeArgs, denoArgs] = await getArgs(args, quiet); const process = Deno.run({ cmd: [ Deno.execPath(), "run", ...denoArgs, import.meta.resolve("./cli.ts"), ...lumeArgs, ], });
const status = await process.status(); process.close();
if (!status.success) { addEventListener("unload", () => Deno.exit(1)); }}
if (import.meta.main) { main(Deno.args);}