import { defineConfig } from "vite"; import { execSync } from "node:child_process"; import tailwindcss from "@tailwindcss/vite"; import wasm from "vite-plugin-wasm"; import topLevelAwait from "vite-plugin-top-level-await"; import { viteSingleFile } from "vite-plugin-singlefile"; import ansi from "./vite-plugin-ansi"; import markdown from "./vite-plugin-markdown"; const commitSha = execSync("git rev-parse HEAD", { encoding: "utf8" }).trim(); export default defineConfig({ define: { __COMMIT_SHA__: JSON.stringify(commitSha), }, plugins: [ ansi(), markdown(), tailwindcss(), wasm(), topLevelAwait(), viteSingleFile({ useRecommendedBuildConfig: false }), ], resolve: { alias: { "~": "/src", }, }, server: { headers: { "Cross-Origin-Opener-Policy": "same-origin", "Cross-Origin-Embedder-Policy": "require-corp", }, }, preview: { headers: { "Cross-Origin-Opener-Policy": "same-origin", "Cross-Origin-Embedder-Policy": "require-corp", }, }, build: { target: "esnext", assetsInlineLimit: 0, cssCodeSplit: false, }, });