46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
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,
|
|
},
|
|
});
|