JavaScriptObfuscator.ts 960 B

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