import { fileURLToPath, URL } from "node:url";
import { resolve } from "path";
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import cssInjectedByJsPlugin from "vite-plugin-css-injected-by-js";
import Components from 'unplugin-vue-components/vite';
import { PrimeVueResolver } from '@primevue/auto-import-resolver';

export default defineConfig({
  define: {
    "process.env": {},
  },
  resolve: {
    alias: {
      "@": fileURLToPath(new URL("./src", import.meta.url)),
    },
  },
  plugins: [
    vue(), 
    cssInjectedByJsPlugin(),
    Components({
      resolvers: [PrimeVueResolver()]
    })
  ],
  build: {
    target: "esnext",
    outDir: "dist/popup",
    lib: {
      formats: ["es"],
      entry: resolve(__dirname, "src/lib/Popup/popup.ts"),
      name: "example-popup",
      fileName: "example-popup",
    },
    cssCodeSplit: false,
    rollupOptions: {
      output: {
        format: "es",
        manualChunks: undefined,
      },
    },
  },
});
