chore: remove vite-plugin-html

This commit is contained in:
xingyu4j
2026-04-10 22:00:33 +08:00
committed by allen
parent bd369df3bc
commit 093479bb33
6 changed files with 46 additions and 146 deletions

View File

@@ -0,0 +1,35 @@
import type { PluginOption } from 'vite';
import type { Options as HtmlMinifierOptions } from 'html-minifier-terser';
import { minify } from 'html-minifier-terser';
const HTML_MINIFY_OPTIONS = {
collapseWhitespace: true,
minifyCSS: true,
minifyJS: true,
removeComments: true,
removeRedundantAttributes: true,
removeScriptTypeAttributes: true,
removeStyleLinkTypeAttributes: true,
useShortDoctype: true,
} as const;
function viteHtmlPlugin(options: HtmlMinifierOptions = {}): PluginOption {
return {
name: 'vben-native-html',
transformIndexHtml: {
order: 'post',
async handler(html, ctx) {
if (!ctx.bundle) {
return html;
}
return await minify(html, {
...HTML_MINIFY_OPTIONS,
...options,
});
},
},
};
}
export { viteHtmlPlugin };

View File

@@ -14,12 +14,12 @@ import viteVueJsx from '@vitejs/plugin-vue-jsx';
import { visualizer as viteVisualizerPlugin } from 'rollup-plugin-visualizer';
import viteDtsPlugin from 'unplugin-dts/vite';
import viteCompressPlugin from 'vite-plugin-compression';
import { createHtmlPlugin as viteHtmlPlugin } from 'vite-plugin-html';
import { VitePWA } from 'vite-plugin-pwa';
import viteVueDevTools from 'vite-plugin-vue-devtools';
import { viteArchiverPlugin } from './archiver';
import { viteExtraAppConfigPlugin } from './extra-app-config';
import { viteHtmlPlugin } from './html';
import { viteImportMapPlugin } from './importmap';
import { viteInjectAppLoadingPlugin } from './inject-app-loading';
import { viteMetadataPlugin } from './inject-metadata';
@@ -199,7 +199,7 @@ async function loadApplicationPlugins(
},
{
condition: !!html,
plugins: () => [viteHtmlPlugin({ minify: true })],
plugins: () => [viteHtmlPlugin(typeof html === 'object' ? html : {})],
},
{
condition: isBuild && importmap,