UNPKG

fuse-box

Version:

Fuse-Box a bundler that does it right

44 lines (35 loc) 1.02 kB
import { WorkFlowContext } from "../core/WorkflowContext"; // interface OptimizeJSPluginOptions { // } export class OptimizeJSClass { public test: RegExp = /\.(j|t)s(x)?$/; public opts?: Object | any = null; public context: WorkFlowContext; public static init(config: any) { return new OptimizeJSClass(config); }; constructor(opts?: any) { if (opts !== null) this.opts = opts } public init(context: WorkFlowContext) { this.context = context } public transform(file, ast) { const optimizeJs = require('optimize-js') let output try { output = optimizeJs(file.contents, this.opts) if (this.context.doLog === true) { file .context .debug("OptimizeJSPlugin", `\n\tOptimized: ${JSON.stringify(this.opts)}`); } file.contents = output } catch (error) { this.context.log.echoWarning('error in OptimizeJSPlugin') } file.analysis.analyze() } }; export const OptimizeJSPlugin = OptimizeJSClass.init