* Refactor Gemini model display: filter old versions, group low/high pro, and improve naming * Fix potential negative minutes and refine Gemini 3 Pro grouping logic based on PR feedback * The account change process has been sped up * Address PR review: enhance error message and parameterize polling interval in process handler * Address PR review: fix potential race condition in database backup logic * fix: prevent renderer white screen and harden sentry gating * feat: localize model labels * chore: enable hoisted node-linker * chore: ignore .agent/.claude/.codex in prettier --------- Co-authored-by: Draculabo <[email protected]>
51 lines
1.9 KiB
TypeScript
51 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'),
|
|
'@nestjs/microservices': path.resolve(process.cwd(), './src/mocks/nestjs-microservices'),
|
|
'@nestjs/websockets': path.resolve(process.cwd(), './src/mocks/nestjs-websockets'),
|
|
},
|
|
},
|
|
build: {
|
|
sourcemap: true,
|
|
rollupOptions: {
|
|
external: ['better-sqlite3', 'keytar'],
|
|
},
|
|
},
|
|
};
|
|
});
|