UNPKG

@regru/webpack-babel-multi-target-plugin

Version:

A Webpack plugin that works with Babel to allow deployment of ES2015 builds targeted to modern browsers, with an ES5 fallback for legacy browsers.

34 lines (33 loc) 1.44 kB
import { Compiler, ExternalsElement, Loader, Plugin } from 'webpack'; import { BabelTarget } from './babel-target'; import { BabelMultiTargetLoader } from './babel.multi.target.loader'; /** * @internalapi */ export declare class TargetingPlugin implements Plugin { private targets; private exclude; private readonly externals; private babelLoaderPath; private babelLoaders; private remainingTargets; private readonly doNotTarget; constructor(targets: BabelTarget[], exclude: RegExp[], doNotTarget: RegExp[], externals: ExternalsElement | ExternalsElement[]); apply(compiler: Compiler): void; private getBlindTarget; targetLazyModules(resolveContext: any): Promise<any>; wrapResolveDependencies(resolveContext: any): Promise<any>; targetModule(module: any): void; private targetDependency; targetDependencies(babelTarget: BabelTarget, context: any): void; afterResolve(resolveContext: any): Promise<void>; checkResolveTarget(resolveContext: any, hasLoader: boolean): void; private targetChunkNames; replaceLoaders(resolveContext: any, loaders: BabelMultiTargetLoader[]): void; isTargetedRequest(context: any, request: string): boolean; private isExternalRequest; isTranspiledRequest(resolveContext: any): boolean; getTargetFromContext(context: any): BabelTarget; private getTargetedBabelLoader; static loader(loader?: Loader): Loader; }