chore: improve local dev DX

This commit is contained in:
Rotimi Best
2024-08-11 09:10:40 +01:00
parent a742b1af43
commit 4ced68e521
+32 -28
View File
@@ -5,38 +5,42 @@ import fs from 'fs';
export default ({ mode }) => {
process.env = { ...process.env, ...loadEnv(mode, process.cwd()) };
const {
VITE_SENTRY_AUTH_TOKEN,
VITE_SENTRY_ORG_NAME,
VITE_SENTRY_PROJECT_NAME,
VITE_USE_HTTPS_ON_LOCALHOST
} = process.env;
return defineConfig({
plugins: [
sveltekit(),
sentryVitePlugin(
VITE_SENTRY_AUTH_TOKEN
? {
url: 'https://sentry.io',
authToken: VITE_SENTRY_AUTH_TOKEN,
org: VITE_SENTRY_ORG_NAME,
project: VITE_SENTRY_PROJECT_NAME
}
: {}
)
],
server:
VITE_USE_HTTPS_ON_LOCALHOST === 'true'
? {
https: {
key: fs.readFileSync(`${__dirname}/cert/key.pem`),
cert: fs.readFileSync(`${__dirname}/cert/cert.pem`)
}
}
: undefined,
plugins: [sveltekit(), sentryVitePlugin(getSentryConfig(process.env))],
server: getServer(process.env),
build: {
sourcemap: true
},
optimizeDeps: {
entries: ['src/routes/**/+*.{js,ts,svelte}']
}
});
};
function getServer({ VITE_USE_HTTPS_ON_LOCALHOST }) {
if (VITE_USE_HTTPS_ON_LOCALHOST === 'true') {
return {
https: {
key: fs.readFileSync(`${__dirname}/cert/key.pem`),
cert: fs.readFileSync(`${__dirname}/cert/cert.pem`)
}
};
}
}
function getSentryConfig({
VITE_SENTRY_AUTH_TOKEN,
VITE_SENTRY_ORG_NAME,
VITE_SENTRY_PROJECT_NAME
}) {
if (VITE_SENTRY_AUTH_TOKEN) {
return {
url: 'https://sentry.io',
authToken: VITE_SENTRY_AUTH_TOKEN,
org: VITE_SENTRY_ORG_NAME,
project: VITE_SENTRY_PROJECT_NAME
};
}
return {};
}