sol-merger
Version:
Merges all import files into single file.
35 lines (34 loc) • 1.27 kB
TypeScript
import { FileAnalyzerResult } from './fileAnalyzer';
import { ImportsAnalyzerResult } from './importsAnalyzer';
import { ExportPluginCtor } from './types';
export declare class Merger {
#private;
private options;
delimeter: string;
commentsDelimeter: string;
removeComments: boolean;
private importRegistry;
nodeModulesRoot: string;
constructor(options?: SolMergerOptions);
getPragmaRegex(): RegExp;
getImportRegex(): RegExp;
getPragma(contents: string): string;
stripPragma(contents: string): string;
init(file: string): Promise<void>;
processFile(file: string, isRoot: boolean, parentImport?: ImportsAnalyzerResult): Promise<string>;
private buildString;
processImports(analyzedFile: FileAnalyzerResult): Promise<string[]>;
private getRootPath;
processExports(analyzedFile: FileAnalyzerResult, parentImport?: ImportsAnalyzerResult): Promise<string[]>;
private processExport;
stripImports(contents: string): string;
getNodeModulesPath(file: string): Promise<string>;
private isComment;
}
export interface SolMergerOptions {
delimeter?: string;
removeComments?: boolean;
commentsDelimeter?: string;
exportPlugins?: ExportPluginCtor[];
additionalRoots?: string[];
}