changed build workflow – for auth it's required to have better control over html and assets

This commit is contained in:
dswbx
2024-11-27 16:19:37 +01:00
parent d36c4b07e0
commit c31bc2ccb0
21 changed files with 559 additions and 285 deletions

View File

@@ -0,0 +1,33 @@
import type { Metafile, Plugin } from "esbuild";
export const entryOutputMeta = (
onComplete?: (
outputs: {
output: string;
meta: Metafile["outputs"][string];
}[]
) => void | Promise<void>
): Plugin => ({
name: "report-entry-output-plugin",
setup(build) {
build.initialOptions.metafile = true; // Ensure metafile is enabled
build.onEnd(async (result) => {
console.log("result", result);
if (result?.metafile?.outputs) {
const entries = build.initialOptions.entryPoints! as string[];
const outputs = Object.entries(result.metafile.outputs)
.filter(([, meta]) => {
return meta.entryPoint && entries.includes(meta.entryPoint);
})
.map(([output, meta]) => ({ output, meta }));
if (outputs.length === 0) {
return;
}
await onComplete?.(outputs);
}
});
}
});