JavaScriptObfuscator.ts 952 B

12345678910111213141516171819202122232425262728
  1. import { IObfuscationResult } from './interfaces/IObfuscationResult';
  2. import { IObfuscatorOptions } from './interfaces/IObfuscatorOptions';
  3. import { JavaScriptObfuscatorCLI } from './cli/JavaScriptObfuscatorCLI';
  4. import { JavaScriptObfuscatorInternal } from './JavaScriptObfuscatorInternal';
  5. import { Options } from './options/Options';
  6. export class JavaScriptObfuscator {
  7. /**
  8. * @param sourceCode
  9. * @param obfuscatorOptions
  10. * @returns {string}
  11. */
  12. public static obfuscate (sourceCode: string, obfuscatorOptions: IObfuscatorOptions = {}): IObfuscationResult {
  13. const javaScriptObfuscator: JavaScriptObfuscatorInternal = new JavaScriptObfuscatorInternal(
  14. new Options(obfuscatorOptions)
  15. );
  16. return javaScriptObfuscator.obfuscate(sourceCode);
  17. }
  18. /**
  19. * @param argv
  20. */
  21. public static runCLI (argv: string[]): void {
  22. new JavaScriptObfuscatorCLI(argv).run();
  23. }
  24. }