12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import 'reflect-metadata';
- import { ServiceIdentifiers } from './container/ServiceIdentifiers';
- import { TInputOptions } from './types/options/TInputOptions';
- import { IInversifyContainerFacade } from './interfaces/container/IInversifyContainerFacade';
- import { IJavaScriptObfuscator } from './interfaces/IJavaScriptObfsucator';
- import { IObfuscationResult } from './interfaces/IObfuscationResult';
- import { InversifyContainerFacade } from './container/InversifyContainerFacade';
- import { JavaScriptObfuscatorCLI } from './cli/JavaScriptObfuscatorCLI';
- export class JavaScriptObfuscator {
- /**
- * @param {string} sourceCode
- * @param {TInputOptions} inputOptions
- * @returns {IObfuscationResult}
- */
- public static obfuscate (sourceCode: string, inputOptions: TInputOptions = {}): IObfuscationResult {
- const inversifyContainerFacade: IInversifyContainerFacade = new InversifyContainerFacade();
- inversifyContainerFacade.load(sourceCode, inputOptions);
- const javaScriptObfuscator: IJavaScriptObfuscator = inversifyContainerFacade
- .get<IJavaScriptObfuscator>(ServiceIdentifiers.IJavaScriptObfuscator);
- const obfuscationResult: IObfuscationResult = javaScriptObfuscator.obfuscate(sourceCode);
- inversifyContainerFacade.unload();
- return obfuscationResult;
- }
- /**
- * @param {string[]} argv
- */
- public static runCLI (argv: string[]): void {
- const javaScriptObfuscatorCLI: JavaScriptObfuscatorCLI = new JavaScriptObfuscatorCLI(argv);
- javaScriptObfuscatorCLI.initialize();
- javaScriptObfuscatorCLI.run();
- }
- }
|