Files
documenso/apps/remix/vite.config.ts
David Nguyen 82b5795636 fix: build
2025-02-08 20:35:20 +11:00

70 lines
1.7 KiB
TypeScript

import { lingui } from '@lingui/vite-plugin';
import { reactRouter } from '@react-router/dev/vite';
import autoprefixer from 'autoprefixer';
import serverAdapter from 'hono-react-router-adapter/vite';
import path from 'path';
import tailwindcss from 'tailwindcss';
import { defineConfig, loadEnv } from 'vite';
import macrosPlugin from 'vite-plugin-babel-macros';
import tsconfigPaths from 'vite-tsconfig-paths';
export default defineConfig({
envDir: path.join(__dirname, '../../'),
envPrefix: '__DO_NOT_USE_OR_YOU_WILL_BE_FIRED__',
define: {
'process.env': {
...process.env,
...loadEnv('development', path.join(__dirname, '../../'), ''),
},
},
css: {
postcss: {
plugins: [tailwindcss, autoprefixer],
},
},
server: {
port: 3000,
strictPort: true,
},
plugins: [
reactRouter(),
macrosPlugin(),
lingui(),
tsconfigPaths(),
serverAdapter({
entry: 'server/main.ts',
}),
],
ssr: {
noExternal: ['react-dropzone', 'plausible-tracker', 'pdfjs-dist'],
external: ['@node-rs/bcrypt', '@prisma/client'],
},
optimizeDeps: {
// include: ['react-icons'],
exclude: ['@node-rs/bcrypt'],
},
resolve: {
alias: {
https: 'node:https',
'.prisma/client/default': '../../node_modules/.prisma/client/default.js',
'.prisma/client/index-browser': '../../node_modules/.prisma/client/index-browser.js',
},
},
/**
* Note: Re run rollup again to build the server afterwards.
*
* See rollup.config.mjs which is used for that.
*/
build: {
rollupOptions: {
external: [
'@node-rs/bcrypt',
'@documenso/pdf-sign',
'@aws-sdk/cloudfront-signer',
'nodemailer',
'playwright',
],
},
},
});