Files
task-manager/vite.config.ts
T

53 lines
1.4 KiB
TypeScript

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import path from "path";
import { readFileSync } from "fs";
import runtimeErrorOverlay from "@replit/vite-plugin-runtime-error-modal";
import { fileURLToPath } from "url";
import { VitePWA } from 'vite-plugin-pwa';
// Read package.json to get the version
const packageJson = JSON.parse(readFileSync(path.resolve(process.cwd(), "package.json"), "utf-8"));
export default defineConfig({
define: {
__APP_VERSION__: JSON.stringify(packageJson.version),
},
plugins: [
react(),
// VitePWA({...}),
runtimeErrorOverlay(),
...(process.env.NODE_ENV !== "production" &&
process.env.REPL_ID !== undefined
? [
await import("@replit/vite-plugin-cartographer").then((m) =>
m.cartographer(),
),
]
: []),
],
resolve: {
alias: {
"@": path.resolve(process.cwd(), "client", "src"),
"@shared": path.resolve(process.cwd(), "shared"),
"@assets": path.resolve(process.cwd(), "attached_assets"),
},
},
root: path.resolve(process.cwd(), "client"),
base: process.env.VITE_BASE_PATH || "/",
build: {
outDir: path.resolve(process.cwd(), "dist/public"),
emptyOutDir: true,
},
server: {
host: "0.0.0.0",
hmr: process.env.HMR_PORT
? { clientPort: parseInt(process.env.HMR_PORT) }
: undefined,
fs: {
strict: true,
deny: ["**/.*"],
},
},
});