Files
gemini-nexus/vite.main.config.mts
T
Gemini Nexus Bot a905877c76 feat: bump version to 0.14.0
Includes all changes from this release cycle:
- Top header navigation (sidebar removed)
- Accounts screen decomposition and visual redesign
- Dev/prod environment isolation
- Usage Analytics with accurate averages, cost reporting, OpenRouter pricing
- Monitor moved to Usage with per-request token/cost tracking
- Clickable traffic logs with expandable JSON body viewer
- OpenCode IDE config in Quick Setup
- API Proxy reorganization (flattened tabs)
- CI/CD pipeline fixes (release config, Node version, pnpm alignment)
- Repository cleanup (~80MB of binaries removed)
2026-05-02 00:32:21 -03:00

56 lines
1.9 KiB
TypeScript

import { defineConfig, loadEnv } from 'vite';
import path from 'path';
import { sentryVitePlugin } from '@sentry/vite-plugin';
// https://vitejs.dev/config
export default defineConfig(({ mode }) => {
const env = loadEnv(mode, process.cwd(), '');
const sentryAuthToken = process.env.SENTRY_AUTH_TOKEN || env.SENTRY_AUTH_TOKEN;
const shouldEnableSentry = mode === 'production' && Boolean(sentryAuthToken);
return {
plugins: shouldEnableSentry
? [
sentryVitePlugin({
org: process.env.SENTRY_ORG || env.SENTRY_ORG,
project: process.env.SENTRY_PROJECT || env.SENTRY_PROJECT,
authToken: sentryAuthToken,
release: {
name: `${process.env.npm_package_name}@${process.env.npm_package_version}`,
},
}),
]
: [],
define: {
'process.env.SENTRY_DSN': JSON.stringify(process.env.SENTRY_DSN || env.SENTRY_DSN),
},
resolve: {
alias: {
'@': path.resolve(process.cwd(), './src'),
kafkajs: path.resolve(process.cwd(), './src/mocks/empty.ts'),
mqtt: path.resolve(process.cwd(), './src/mocks/empty.ts'),
amqplib: path.resolve(process.cwd(), './src/mocks/empty.ts'),
'amqp-connection-manager': path.resolve(process.cwd(), './src/mocks/empty.ts'),
nats: path.resolve(process.cwd(), './src/mocks/empty.ts'),
ioredis: path.resolve(process.cwd(), './src/mocks/empty.ts'),
'@fastify/static': path.resolve(process.cwd(), './src/mocks/empty.ts'),
'@fastify/view': path.resolve(process.cwd(), './src/mocks/empty.ts'),
},
},
build: {
sourcemap: true,
rollupOptions: {
external: [
'better-sqlite3',
'keytar',
'winston',
'winston-daily-rotate-file',
'moment',
'@nestjs/microservices',
'@nestjs/websockets',
],
},
},
};
});