A repository for a FoundryVTT plugin for Kingmaker homebrew.

Adding config loading to change module directory to folder in Foundry folder

+42 -1
+38
config.ts
··· 1 + import dotenv from "dotenv"; 2 + import path from "path"; 3 + 4 + dotenv.config({ path: path.resolve(__dirname, ".env") }); 5 + 6 + interface ENV { 7 + MODULE_DIR: string | undefined; 8 + } 9 + 10 + interface Config { 11 + outdir: string; 12 + } 13 + 14 + const getConfig = (): ENV => { 15 + return { 16 + MODULE_DIR: process.env.MODULE_DIR 17 + }; 18 + } 19 + 20 + const getSanitizedConfig = (config: ENV): Config => { 21 + let outdir: string; 22 + 23 + if (config.MODULE_DIR === undefined) { 24 + outdir = path.join(process.cwd(), "dist"); 25 + } else { 26 + outdir = config.MODULE_DIR; 27 + } 28 + 29 + return { 30 + outdir 31 + } as Config; 32 + } 33 + 34 + const config = getConfig(); 35 + 36 + const sanitizedConfig = getSanitizedConfig(config); 37 + 38 + export default sanitizedConfig;
+4 -1
vite.config.ts
··· 1 1 import { defineConfig } from "vite"; 2 2 import { svelte } from "@sveltejs/vite-plugin-svelte"; 3 + import config from "./config"; 3 4 4 5 export default defineConfig({ 5 6 plugins: [ ··· 26 27 watch: { 27 28 buildDelay: 1000 28 29 }, 29 - sourcemap: true 30 + sourcemap: true, 31 + outDir: config.outdir, 32 + emptyOutDir: true 30 33 } 31 34 });