import type { Plugin } from "vite"; import { FEDERATION_DIR_NAME } from "../constants"; interface EnvironmentOptions { input: string; } export function sanityEnvironmentPlugin(options: EnvironmentOptions): Plugin { return { name: "sanity/environment", config() { return { builder: { async buildApp(builder) { await builder.build(builder.environments[FEDERATION_DIR_NAME]); }, }, environments: { [FEDERATION_DIR_NAME]: { consumer: "client", build: { copyPublicDir: false, outDir: `dist`, rollupOptions: { input: options.input }, }, }, }, }; }, }; }