Talon/ui/menu/.rollup/htmlMinifier.js
ThetaDev 3562dc29d7
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
reformat js
2023-03-28 14:07:07 +02:00

31 lines
716 B
JavaScript

import { createFilter } from "@rollup/pluginutils";
import { Minifier } from "minify-html-stream";
import { Readable } from "stream";
function htmlMinifier(options) {
const filter = createFilter(["**/*.svelte"], options.exclude);
return {
name: "htmlMinifier",
async transform(code, id) {
if (!filter(id)) return code;
let stream = new Readable();
stream.push(code);
stream.push(null);
stream = stream.pipe(new Minifier(options.options));
const chunks = [];
for await (let chunk of stream) {
chunks.push(chunk);
}
const buffer = Buffer.concat(chunks);
return buffer.toString("utf-8");
},
};
}
export default htmlMinifier;