Files
suwayomi-material-you-webui/vite.config.ts
T

54 lines
1.5 KiB
TypeScript
Raw Normal View History

2023-06-05 00:58:21 +02:00
/*
* Copyright (C) Contributors to the Suwayomi project
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
2024-04-17 20:01:17 +02:00
/* eslint-disable import/no-extraneous-dependencies */
2023-06-17 20:53:00 +02:00
import path from 'path';
2023-08-11 17:30:22 +02:00
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react-swc';
import viteTsconfigPaths from 'vite-tsconfig-paths';
2024-03-26 23:39:25 +01:00
import legacy from '@vitejs/plugin-legacy';
2025-06-22 23:12:54 +02:00
import { nodePolyfills } from 'vite-plugin-node-polyfills';
2025-08-02 23:13:50 +02:00
import 'dotenv/config';
2023-06-05 00:58:21 +02:00
2023-11-25 18:13:51 +01:00
// eslint-disable-next-line import/no-default-export
2025-09-24 00:23:19 +03:00
export default defineConfig(({ command }) => ({
base: command === 'serve' ? process.env.VITE_SUBPATH || './' : './',
2023-06-05 00:58:21 +02:00
build: {
outDir: 'build',
},
server: {
2025-08-02 23:13:50 +02:00
port: Number(process.env.PORT),
2025-08-13 00:57:46 +02:00
allowedHosts: process.env.ALLOWED_HOSTS.split(',').map((s) => s.trim()),
2023-06-05 00:58:21 +02:00
},
2023-06-17 20:53:00 +02:00
resolve: {
alias: {
2024-12-24 03:32:55 +01:00
'@': path.resolve(import.meta.dirname, './src'),
2023-06-17 20:53:00 +02:00
},
},
2024-04-14 15:11:13 +02:00
optimizeDeps: {
include: ['@mui/material/Tooltip'],
},
2024-03-26 23:39:25 +01:00
plugins: [
react(),
viteTsconfigPaths(),
legacy({
modernPolyfills: [
'es/array/to-spliced',
'es/array/to-sorted',
'es/array/find-last',
'es/array/find-last-index',
2024-04-20 00:58:29 +02:00
'es/object/group-by',
2024-03-26 23:39:25 +01:00
],
}),
2025-06-22 23:12:54 +02:00
nodePolyfills({
include: ['assert'],
}),
2024-03-26 23:39:25 +01:00
],
2023-06-05 00:58:21 +02:00
}));