/* * @Author: wei.li * @Date: 2021-12-23 17:33:21 * @LastEditors: levi7754 levi7754@163.com * @LastEditTime: 2025-07-26 09:34:47 * @Description: file content */ import { resolve } from 'path'; import { getPluginsList } from './build/plugins'; /** 当前执行node命令时文件夹的地址(工作目录) */ const root: string = process.cwd(); /** 路径查找 */ const pathResolve = (dir: string): string => { return resolve(__dirname, '.', dir); }; /** 设置别名 */ const alias: Record = { '@': pathResolve('src'), '@build': pathResolve('build') }; export default () => { return { root, resolve: { alias }, plugins: getPluginsList(), // https://cn.vitejs.dev/config/dep-optimization-options.html#dep-optimization-options build: { // https://cn.vitejs.dev/guide/build.html#browser-compatibility target: 'modules', sourcemap: false, rollupOptions: { //忽略文件 external: [ 'echarts', 'vue', 'exceljs', 'dayjs', 'animate.css', 'pinia', 'vxe-table', 'vxe-pc-ui', 'xe-utils', 'vue-i18n', 'v-viewer', 'vuedraggable', '@vueuse/core', '@vueuse/motion', 'element-plus', '@utogether/print', '@utogether/utils', '@utogether/directive', '@utogether/components', 'html-to-image', '@logicflow/core', '@logicflow/extension', 'remixicon', 'socket.io-client', 'crypto-js', 'version-rocket', 'vue-tippy', 'vue-router', '@iconify/vue', 'qrcode', 'element-resize-detector', '**/udp/**' ] }, lib: { entry: resolve(__dirname, 'index.ts'), formats: ['es'], name: '@utogether/udp-core', fileName: format => `core.${format}.js` }, define: { to: null } } }; };