import * as minifier from 'html-minifier-terser' ; const minifyHtml = async ( html , minify ) => { if ( typeof minify === 'boolean' && ! minify ) { return html ; } let terserOptions = minify ; if ( typeof minify === 'boolean' && minify ) { terserOptions = { collapseWhitespace : true , keepClosingSlash : true , removeComments : true , removeRedundantAttributes : true , removeScriptTypeAttributes : true , removeStyleLinkTypeAttributes : true , useShortDoctype : true } ; } try { return await minifier . minify ( html , terserOptions ) ; } catch ( e ) { const isParseError = String ( e . message ) . indexOf ( 'Parse Error' ) === 0 ; if ( isParseError ) { e . message = `${ 'vite-plugin-index-html could not minify the generated output.\n' + 'In production mode the html minifcation is enabled by default.\n' + 'If you are not generating a valid html output please disable it manually.\n' + 'You can do so by adding the following setting to your HtmlWebpackPlugin config:\n|\n|' + '    minify: false\n|\n' + 'For parser dedicated bugs please create an issue here:\n' + 'https://danielruf.github.io/html-minifier-terser/' + '\n' }${ e . message }` ; } throw e ; } } ; export default minifyHtml ;