UNPKG

@openscript/unplugin-favicons

Version:

Generate favicons for your project with caching for blazing fast rebuilds.

31 lines 1.4 kB
import Module from "node:module"; const require = Module.createRequire(import.meta.url); /** Return the currently used html-webpack-plugin location */ const getHtmlWebpackPluginVersion = () => { try { const location = require.resolve("html-webpack-plugin/package.json"); // eslint-disable-next-line import/no-dynamic-require,@typescript-eslint/no-unsafe-assignment,security/detect-non-literal-require const { version } = require(location); return `found html-webpack-plugin ${version} at ${location}`; } catch { return "html-webpack-plugin not found"; } }; const findHtmlWebpackPlugin = (compilation) => { const { compiler } = compilation; const Plugin = compiler.options.plugins.find((p) => p?.constructor?.name === "HtmlWebpackPlugin")?.constructor; if (Plugin === undefined) { return undefined; } if (Plugin.version >= 5) { return Plugin; } compilation.errors.push( // eslint-disable-next-line @typescript-eslint/no-unsafe-argument new compiler.webpack.WebpackError(`${"This @openscript/unplugin-favicons version is not compatible with your current HtmlWebpackPlugin version.\n" + "Please upgrade to HtmlWebpackPlugin >= 5\n"}${getHtmlWebpackPluginVersion()}`)); return undefined; }; export default findHtmlWebpackPlugin; //# sourceMappingURL=find-html-webpack-plugin.js.map