Files
OpenList-Frontend/vite.config.ts
2025-11-14 12:32:33 +08:00

94 lines
2.7 KiB
TypeScript

import path from "path"
import { defineConfig } from "vite"
import solidPlugin from "vite-plugin-solid"
import legacy from "@vitejs/plugin-legacy"
import { dynamicBase } from "vite-plugin-dynamic-base"
import { viteStaticCopy } from "vite-plugin-static-copy"
export default defineConfig({
resolve: {
alias: {
"~": path.resolve(__dirname, "src"),
// "@solidjs/router": path.resolve(__dirname, "solid-router/src"),
"solid-icons": path.resolve(__dirname, "node_modules/solid-icons"),
},
},
plugins: [
solidPlugin(),
legacy({
targets: ["defaults"],
}),
dynamicBase({
// dynamic public path var string, default window.__dynamic_base__
publicPath: " window.__dynamic_base__",
// dynamic load resources on index.html, default false. maybe change default true
transformIndexHtml: true,
transformIndexHtmlConfig: {
insertBodyAfter: true,
},
}),
process.env.VITE_LITE !== "true"
? viteStaticCopy({
targets: [
{
src: "node_modules/monaco-editor/min/*",
dest: "static/monaco-editor",
},
{
src: "node_modules/katex/dist/katex.min.css",
dest: "static/katex",
},
{
src: "node_modules/katex/dist/fonts/*",
dest: "static/katex/fonts",
},
{
src: "node_modules/mermaid/dist/mermaid.min.js",
dest: "static/mermaid",
},
{
src: "node_modules/@ruffle-rs/ruffle/*.{js,wasm}",
dest: "static/ruffle",
},
{
src: "node_modules/libheif-js/libheif-wasm/libheif.{js,wasm}",
dest: "static/libheif",
},
{
src: "node_modules/libass-wasm/dist/js/subtitles-octopus-worker.{js,wasm}",
dest: "static/libass-wasm",
},
{
src: "src/components/artplayer-plugin-ass/fonts/*",
dest: "static/fonts",
},
],
})
: null,
],
base: process.env.NODE_ENV === "production" ? "/__dynamic_base__/" : "/",
// base: "/",
build: {
// target: "es2015", //next
// polyfillDynamicImport: false,
},
// experimental: {
// renderBuiltUrl: (filename, { type, hostId, hostType }) => {
// if (type === "asset") {
// return { runtime: `window.OPENLIST_CONFIG.cdn/${filename}` };
// }
// return { relative: true };
// },
// },
server: {
host: "0.0.0.0",
proxy: {
"/api": {
target: "http://localhost:5244",
changeOrigin: true,
// rewrite: (path) => path.replace(/^\/api/, ""),
},
},
},
})