vanzy-protect
Version:
Epic Obfuscator Yeahhh
37 lines (36 loc) • 1.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.conditionalExpression = void 0;
const comment_1 = require("../obfuscate/comment");
const postElseExpr_1 = require("./postElseExpr");
const rightExpression_1 = require("./rightExpression");
const traverse_1 = require("./traverse");
function modIfStatement(expr) {
var data = 'if';
data += (0, comment_1.comment)(2) + '(';
data += (0, rightExpression_1.rightExpression)(expr.test);
data += ')' + (0, comment_1.comment)(2);
if (expr.consequent.type === 'BlockStatement') {
data += '{' + (0, comment_1.comment)(2) + (0, traverse_1.traverse)(expr.consequent.body) + ';}';
}
else {
data += '{return ' + (0, comment_1.comment)(2) + (0, postElseExpr_1.postElseExpr)(expr.consequent) + ';}';
}
if (expr.alternate) {
data += ' else ' + (0, comment_1.comment)(1);
if (expr.alternate.type === 'BlockStatement') {
data += '{' + (0, comment_1.comment)(2) + (0, traverse_1.traverse)(expr.alternate.body) + ';}';
}
else {
data += '{return ' + (0, comment_1.comment)(2) + (0, postElseExpr_1.postElseExpr)(expr.alternate) + ';}';
}
}
return data;
}
function conditionalExpression(expr) {
var data = '(() => {';
data += modIfStatement(expr);
data += '})()';
return data;
}
exports.conditionalExpression = conditionalExpression;