1234567891011121314151617181920212223242526272829 |
- "use strict";
- const estraverse = require('estraverse');
- const NodeObfuscator_1 = require('./NodeObfuscator');
- const NodeUtils_1 = require("../NodeUtils");
- const Utils_1 = require("../Utils");
- class MethodDefinitionObfuscator extends NodeObfuscator_1.NodeObfuscator {
- constructor(...args) {
- super(...args);
- this.ignoredNames = ['constructor'];
- }
- obfuscateNode(methodDefinitionNode, parentNode) {
- this.replaceMethodName(methodDefinitionNode);
- }
- replaceMethodName(methodDefinitionNode) {
- estraverse.replace(methodDefinitionNode.key, {
- leave: (node) => {
- if (NodeUtils_1.NodeUtils.isIdentifierNode(node) &&
- !Utils_1.Utils.arrayContains(this.ignoredNames, node.name) &&
- methodDefinitionNode.computed === false) {
- methodDefinitionNode.computed = true;
- node.name = this.replaceLiteralStringByUnicodeArrayTranslatorCall(node.name);
- return;
- }
- return estraverse.VisitorOption.Skip;
- }
- });
- }
- }
- exports.MethodDefinitionObfuscator = MethodDefinitionObfuscator;
|