ruff/playground/ty/vite.config.ts

35 lines
882 B
TypeScript

import { defineConfig } from "vite";
import tailwindcss from "@tailwindcss/vite";
import react from "@vitejs/plugin-react-swc";
import { dirname, join } from "path";
import { fileURLToPath } from "url";
import { normalizePath } from "vite";
import { viteStaticCopy } from "vite-plugin-static-copy";
const PYODIDE_EXCLUDE = [
"!**/*.{md,html}",
"!**/*.d.ts",
"!**/*.whl",
"!**/node_modules",
];
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react(), tailwindcss(), viteStaticCopyPyodide()],
optimizeDeps: { exclude: ["pyodide", "ty_wasm"] },
});
export function viteStaticCopyPyodide() {
const pyodideDir = normalizePath(
join(dirname(fileURLToPath(import.meta.resolve("pyodide"))), "*"),
);
return viteStaticCopy({
targets: [
{
src: [pyodideDir, ...PYODIDE_EXCLUDE],
dest: "assets",
},
],
});
}