import { IObfuscationResult } from './interfaces/IObfuscationResult';
import { IObfuscatorOptions } from './interfaces/IObfuscatorOptions';
import { JavaScriptObfuscatorCLI } from './cli/JavaScriptObfuscatorCLI';
import { JavaScriptObfuscatorInternal } from './JavaScriptObfuscatorInternal';
export class JavaScriptObfuscator {
/**
* @param sourceCode
* @param obfuscatorOptions
* @returns {string}
*/
public static obfuscate (sourceCode: string, obfuscatorOptions: IObfuscatorOptions = {}): IObfuscationResult {
let javaScriptObfuscator: JavaScriptObfuscatorInternal = new JavaScriptObfuscatorInternal(
sourceCode,
obfuscatorOptions
);
javaScriptObfuscator.obfuscate();
return javaScriptObfuscator.getObfuscationResult();
}
/**
* @param argv
*/
public static runCLI (argv: string[]): void {
new JavaScriptObfuscatorCLI(argv).run();
}
}
|