Files
CTFd/vite.config.js
Kevin Chung a64e7d51ef Squashed 'CTFd/themes/core-beta/' changes from 9126d77d..5ce3003b
5ce3003b Merge pull request #47 from aCursedComrade/patch-1
c9887cb1 Fix team template

git-subtree-dir: CTFd/themes/core-beta
git-subtree-split: 5ce3003b4d68352e629ee2d390bc999e7d6b071e
2023-06-11 15:56:28 -04:00

70 lines
2.3 KiB
JavaScript

const { resolve } = require("path");
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import copy from "rollup-plugin-copy";
// https://vitejs.dev/config/
export default defineConfig({
plugins: [vue()],
resolve: {
alias: {
"~": resolve(__dirname, "./node_modules/"),
},
},
build: {
manifest: true,
outDir: "static",
rollupOptions: {
plugins: [
copy({
targets: [
// https://github.com/vitejs/vite/issues/1618#issuecomment-764579557
{
src: "./node_modules/@fortawesome/fontawesome-free/webfonts/**/*",
dest: "static/webfonts",
},
{
src: "./node_modules/@fontsource/lato/files/**/*400*-normal*",
dest: "static/webfonts",
},
{
src: "./node_modules/@fontsource/lato/files/**/*700*-normal*",
dest: "static/webfonts",
},
{
src: "./node_modules/@fontsource/raleway/files/**/*400*-normal*",
dest: "static/webfonts",
},
{
src: "./assets/img/**",
dest: "static/img",
},
],
hook: "writeBundle",
}),
],
output: {
manualChunks: {
echarts: ["echarts", "zrender"],
},
},
input: {
index: resolve(__dirname, "assets/js/index.js"),
page: resolve(__dirname, "assets/js/page.js"),
setup: resolve(__dirname, "assets/js/setup.js"),
settings: resolve(__dirname, "assets/js/settings.js"),
challenges: resolve(__dirname, "assets/js/challenges.js"),
scoreboard: resolve(__dirname, "assets/js/scoreboard.js"),
notifications: resolve(__dirname, "assets/js/notifications.js"),
teams_public: resolve(__dirname, "assets/js/teams/public.js"),
teams_private: resolve(__dirname, "assets/js/teams/private.js"),
teams_list: resolve(__dirname, "assets/js/teams/list.js"),
users_public: resolve(__dirname, "assets/js/users/public.js"),
users_private: resolve(__dirname, "assets/js/users/private.js"),
users_list: resolve(__dirname, "assets/js/users/list.js"),
main: resolve(__dirname, "assets/scss/main.scss"),
},
},
},
});