UNPKG

@roots/bud-extensions

Version:

bud.js core module

35 lines (34 loc) 1.48 kB
import { __decorate } from "tslib"; import { DynamicOption, Extension } from '@roots/bud-framework/extension'; import { bind, disabled, label, options, } from '@roots/bud-framework/extension/decorators'; import { default as InterpolateHtmlWebpackPlugin, } from './plugin/index.js'; /** * Interpolate html webpack plugin configuration */ let BudInterpolateHtmlExtension = class BudInterpolateHtmlExtension extends Extension { /** * {@link Extension.make} */ async make(bud, options) { const InterpolateHtmlWebpackPlugin = await bud.module.import(`@roots/bud-extensions/interpolate-html-webpack-plugin/plugin`, import.meta.url); const { getHooks } = await bud.module.import(`@roots/bud-support/html-webpack-plugin`, import.meta.url); return new InterpolateHtmlWebpackPlugin(getHooks, { ...(options ?? {}), ...(bud.extensions.get(`@roots/bud-extensions/webpack-define-plugin`) ?.options ?? {}), ...(bud.env.getPublicEnv() ?? {}), }); } }; __decorate([ bind ], BudInterpolateHtmlExtension.prototype, "make", null); BudInterpolateHtmlExtension = __decorate([ label(`@roots/bud-extensions/interpolate-html-webpack-plugin`), options({ APP_TITLE: DynamicOption.make(app => app.label), NO_SCRIPT: `You need to enable JavaScript to run this app`, }), disabled ], BudInterpolateHtmlExtension); export { BudInterpolateHtmlExtension as default };