You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
halo-admin/packages/components/vite.config.ts

57 lines
1.3 KiB

import { fileURLToPath, URL } from "url";
import { defineConfig } from "vite";
import Vue from "@vitejs/plugin-vue";
import VueJsx from "@vitejs/plugin-vue-jsx";
import Icons from "unplugin-icons/vite";
import Dts from "vite-plugin-dts";
import path from "path";
export default defineConfig({
plugins: [
Vue(),
VueJsx(),
Icons({ compiler: "vue3" }),
Dts({
entryRoot: "./src",
outputDir: "./dist",
insertTypesEntry: true,
}),
],
resolve: {
alias: {
"@": fileURLToPath(new URL("./src", import.meta.url)),
},
},
build: {
outDir: path.resolve(__dirname, "dist"),
lib: {
entry: path.resolve(__dirname, "src/index.ts"),
name: "HaloComponents",
formats: ["es", "iife"],
fileName: (format) => `halo-components.${format}.js`,
},
rollupOptions: {
external: [
"vue",
"vue-router",
"@vueuse/core",
"@vueuse/components",
"@vueuse/router",
],
output: {
globals: {
vue: "Vue",
"vue-router": "VueRouter",
"@vueuse/core": "VueUse",
"@vueuse/components": "VueUse",
"@vueuse/router": "VueUse",
},
exports: "named",
generatedCode: "es5",
},
},
sourcemap: true,
},
});