Files
kami_frontend/config/plugin/compress.ts
danial 85a2da5e2f ci: set up continuous integration and delivery pipeline
- Add .drone.yml file to configure CI/CD pipeline
- Set up Docker build and push to private registry
- Add deployment configuration for development and production environments
- Include health check and environment variable support
2025-03-30 22:34:38 +08:00

35 lines
787 B
TypeScript

/**
* Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated
* gzip压缩
* https://github.com/anncwb/vite-plugin-compression
*/
import type { Plugin } from 'vite';
import compressPlugin from 'vite-plugin-compression';
export default function configCompressPlugin(
compress: 'gzip' | 'brotli',
deleteOriginFile = false
): Plugin | Plugin[] {
const plugins: Plugin[] = [];
if (compress === 'gzip') {
plugins.push(
compressPlugin({
ext: '.gz',
deleteOriginFile
})
);
}
if (compress === 'brotli') {
plugins.push(
compressPlugin({
ext: '.br',
algorithm: 'brotliCompress',
deleteOriginFile
})
);
}
return plugins;
}