| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- import { defineConfig } from 'vite';
- import path from 'path';
- import config from './package.json';
- import vue from '@vitejs/plugin-vue';
- import dts from 'vite-plugin-dts';
- const banner = `/*!
- * ${config.name} v${config.version} ${new Date()}
- * (c) 2022 @jdf2e.
- * Released under the MIT License.
- */`;
- let input = {
- index: `./src/packages/locale/index`
- };
- // 动态读取file name
- ['zh-CN', 'zh-TW', 'en-US', 'id-ID'].map((file) => {
- input[file] = `./src/packages/locale/lang/${file}`;
- });
- import fs from 'fs-extra';
- // 构建index.scss 兼容插件市场按需加载插件
- fs.outputFile(path.resolve(__dirname, './dist/packages/locale/index.scss'), ' ', 'utf8', (error) => {});
- fs.outputFile(path.resolve(__dirname, './dist/packages/locale/lang/index.scss'), ' ', 'utf8', (error) => {});
- export default defineConfig({
- plugins: [
- vue(),
- dts({
- insertTypesEntry: true,
- copyDtsFiles: true,
- cleanVueFileName: true,
- outputDir: path.resolve(__dirname, './dist/packages/'),
- include: path.resolve(__dirname, './src/packages/locale')
- })
- ],
- build: {
- minify: true,
- lib: {
- entry: '',
- name: 'index',
- // fileName: (format) => format,
- formats: ['es']
- },
- rollupOptions: {
- // 请确保外部化那些你的库中不需要的依赖
- external: ['vue'],
- input,
- output: {
- banner,
- dir: path.resolve(__dirname, './dist/packages/locale/lang'),
- entryFileNames: '[name].js',
- plugins: []
- }
- },
- emptyOutDir: false
- }
- });
|