opencode/packages/app/vite.config.ts

54 lines
1.4 KiB
TypeScript

import { sentryVitePlugin } from "@sentry/vite-plugin"
import { fileURLToPath } from "node:url"
import { defineConfig } from "vite"
import desktopPlugin, { channel } from "./vite.js"
import { icons } from "./vite.icons"
import { serviceWorker } from "./vite.pwa"
const sentry =
process.env.SENTRY_AUTH_TOKEN && process.env.SENTRY_ORG && process.env.SENTRY_PROJECT
? sentryVitePlugin({
authToken: process.env.SENTRY_AUTH_TOKEN,
org: process.env.SENTRY_ORG,
project: process.env.SENTRY_PROJECT,
telemetry: false,
release: {
name: process.env.SENTRY_RELEASE ?? process.env.VITE_SENTRY_RELEASE,
},
sourcemaps: {
assets: "./dist/**",
filesToDeleteAfterUpload: "./dist/**/*.map",
},
})
: false
export default defineConfig({
plugins: [
desktopPlugin,
icons(channel),
serviceWorker(fileURLToPath(new URL("./dist", import.meta.url))),
sentry,
] as any,
server: {
host: "0.0.0.0",
allowedHosts: true,
port: 3000,
},
build: {
...(process.env.VITE_OPENCODE_TEST_FIXTURES === "1"
? {
rolldownOptions: {
input: [
"index.html",
"e2e/utils/settings-wsl.html",
"e2e/utils/app-direction.html",
"e2e/utils/windows-menu.html",
],
},
}
: {}),
assetsDir: "_assets",
target: "esnext",
sourcemap: true,
},
})