1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| /**
| * Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated
| * https://github.com/anncwb/vite-plugin-compression
| */
| import type { PluginOption } from 'vite';
| import compressPlugin from 'vite-plugin-compression';
|
| export function configCompressPlugin({
| compress,
| deleteOriginFile = false,
| }: {
| compress: string;
| deleteOriginFile?: boolean;
| }): PluginOption[] {
| const compressList = compress.split(',');
|
| const plugins: PluginOption[] = [];
|
| if (compressList.includes('gzip')) {
| plugins.push(
| compressPlugin({
| ext: '.gz',
| deleteOriginFile,
| }),
| );
| }
|
| if (compressList.includes('brotli')) {
| plugins.push(
| compressPlugin({
| ext: '.br',
| algorithm: 'brotliCompress',
| deleteOriginFile,
| }),
| );
| }
| return plugins;
| }
|
|