fix(vite): avoid adding duplicate nitro plugins when using `nitro build` · nitrojs/nitro@0da93bd

Original file line numberDiff line numberDiff line change

@@ -7,10 +7,13 @@ export async function viteBuild(nitro: Nitro) {

77

throw new Error("Nitro dev CLI does not supports vite. Please use `vite dev` instead.");

88

}

99

const { createBuilder } = await import((nitro.options as any).__vitePkg__ || "vite");

10+

const pluginInstance = nitroPlugin({ _nitro: nitro });

11+

(globalThis as any).__nitro_build__ = true;

1012

const builder = await createBuilder({

1113

base: nitro.options.rootDir,

12-

plugins: [await nitroPlugin({ _nitro: nitro })],

14+

plugins: [pluginInstance],

1315

logLevel: isTest ? "warn" : undefined,

1416

});

17+

delete (globalThis as any).__nitro_build__;

1518

await builder.buildApp();

1619

}