@tsdi/pack
Version:
@tsdi/pack is simple build tasks, base on AOP, Ioc container, via @tsdi. dev build pack activities.
83 lines (82 loc) • 2.77 kB
TypeScript
import { Binding } from '@tsdi/components';
import { Plugin, RollupOptions } from 'rollup';
import { CompilerOptions } from 'typescript';
import { NodeExpression, NodeActivityContext } from '../NodeActivityContext';
import { RollupActivity, RollupOption } from './RollupActivity';
/**
* rollup activity template option.
*
* @export
* @interface RollupOption
* @extends {TemplateOption}
*/
export interface RollupTsOption extends RollupOption {
/**
* rollup annotation.
*
* @type {Binding<NodeExpression<boolean>>}
* @memberof RollupOption
*/
annotation?: Binding<NodeExpression<boolean>>;
/**
* include libs for auto create rollup options.
*
* @type {Binding<string[]>}
* @memberof LibPackBuilderOption
*/
includeLib?: Binding<string[]>;
include?: Binding<NodeExpression<string[]>>;
exclude?: Binding<NodeExpression<string[]>>;
tsconfig?: Binding<NodeExpression<string>>;
compileOptions?: Binding<NodeExpression<CompilerOptions>>;
/**
* dts sub folder name
*
* @type {string}
* @memberof LibTaskOption
*/
dts?: Binding<NodeExpression<string>>;
/**
* before compile plugins.
*
* @type {Binding<NodeExpression<Plugin[]>>}
* @memberof RollupTsOption
*/
beforeCompilePlugins?: Binding<NodeExpression<Plugin[]>>;
/**
* tscompile rollup plugin.
*
* @type {Binding<NodeExpression<Plugin>>}
* @memberof RollupTsOption
*/
tscompile?: Binding<NodeExpression<Plugin>>;
uglify: Binding<NodeExpression<boolean | Plugin>>;
/**
* after ts compile rollup plugins.
*
* @type {NodeExpression<Plugin[]>}
* @memberof RollupOption
*/
afterCompilePlugins?: Binding<NodeExpression<Plugin[]>>;
}
export declare class RollupTsActivity extends RollupActivity {
beforeCompile: NodeExpression<Plugin[]>;
tscompile: NodeExpression<Plugin>;
afterCompile: NodeExpression<Plugin[]>;
includeLib: string[];
annotation: NodeExpression<boolean>;
include: NodeExpression<string[]>;
exclude: NodeExpression<string[]>;
dts: NodeExpression<string>;
tsconfig: NodeExpression<string>;
compileOptions?: NodeExpression<CompilerOptions>;
uglify: NodeExpression<boolean | Plugin>;
private exeCache;
execute(ctx: NodeActivityContext): Promise<void>;
protected getInputProps(): string[];
protected vailfExternal(external: string[]): string[];
protected setOptions(ctx: NodeActivityContext, opts: RollupOptions, key: string, val: any): void;
protected resolvePlugins(ctx: NodeActivityContext, opts: RollupOptions): Promise<void>;
getDefaultTsCompiler(ctx: NodeActivityContext): Promise<Plugin>;
static ρAnn(): any;
}