jsoncv/vite.config.js

52 lines
1.2 KiB
JavaScript

import { resolve } from 'path';
import { defineConfig } from 'vite';
const sampleFilename = './sample.resume.json'
let dataFilename = process.env.DATA_FILENAME || sampleFilename
const data = require(dataFilename)
const rootDir = resolve(__dirname, 'src')
const fileRegex = /\.(my-file-ext)$/
// ref 1: https://vitejs.dev/guide/api-plugin.html#transforming-custom-file-types
// ref 2: https://github.com/vitejs/vite/issues/594#issuecomment-665915643
function TransformEjs() {
return {
name: 'transform-ejs',
transform(src, id) {
if (id.endsWith('.ejs')) {
return {
code: `export default ${JSON.stringify(src)}`,
map: null, // provide source map if available
}
}
},
}
}
export default defineConfig({
// use relative path for assets
// base: "",
root: 'src',
// assetsInclude: ['**/*.ejs'],
build: {
// relative to root
outDir: "../dist",
// put assets in the same folder as index.html
// assetsDir: ".",
rollupOptions: {
input: {
main: resolve(rootDir, 'index.html'),
editor: resolve(rootDir, 'editor/index.html'),
},
},
},
plugins: [
TransformEjs(),
],
})