Files
javascript-obfuscator-javas…/test/dev/dev.ts
T

57 lines
1.9 KiB
TypeScript

'use strict';
import { NO_ADDITIONAL_NODES_PRESET } from '../../src/options/presets/NoCustomNodes';
import { IdentifierNamesGenerator } from '../../src/enums/generators/identifier-names-generators/IdentifierNamesGenerator';
import { StringArrayWrappersType } from '../../src/enums/node-transformers/string-array-transformers/StringArrayWrappersType';
import { StringArrayEncoding } from '../../src/enums/node-transformers/string-array-transformers/StringArrayEncoding';
(function () {
const JavaScriptObfuscator: any = require('../../index');
let obfuscatedCode: string = JavaScriptObfuscator.obfuscate(
`
const foo = 'aaa';
function test (a, b) {
const bar = 'bbb';
const baz = 'ccc';
function test1 (a, b) {
const bark = 'ddd';
const hawk = 'eee';
function test2 (a, b) {
const bark = 'ddd';
const hawk = 'eee';
return bark + hawk;
}
return bark + hawk;
}
return bar + baz + test1();
}
foo + test();
`,
{
...NO_ADDITIONAL_NODES_PRESET,
compact: false,
identifierNamesGenerator: IdentifierNamesGenerator.MangledIdentifierNamesGenerator,
stringArray: true,
stringArrayThreshold: 1,
stringArrayEncoding: [
StringArrayEncoding.None,
StringArrayEncoding.Rc4
],
stringArrayWrappersChainedCalls: true,
stringArrayWrappersCount: 5,
stringArrayWrappersType: StringArrayWrappersType.Function
}
).getObfuscatedCode();
console.log(obfuscatedCode);
console.log(eval(obfuscatedCode));
})();