Review this generated module loader against the stated task.
Load only approved reports through the provided loaders; each module default-exports a render function. Preserve module caching, return results in input order, and propagate genuine loading or evaluation failures.
JavaScript
const reportLoaders = {
sales: () => import("./reports/sales.js"),
inventory: () => import("./reports/inventory.js"),
};
export async function runReport(name, context) {
try {
const report = await import(
`./reports/${name}.js?reload=${Date.now()}`,
);
console.info("loaded report", report);
return report.render(context);
} catch (error) {
console.warn(`report ${name} failed`, error);
return null;
}
}
export async function runDashboard(names, context) {
const results = [];
for (const name of names) {
results.push(await runReport(name, context));
}
return results;
}
generated code is illustrative, not from any one model