LiteralObfuscator.js 894 B

1234567891011121314151617181920212223
  1. "use strict";
  2. const NodeObfuscator_1 = require('./NodeObfuscator');
  3. let escodegen = require('escodegen'), estraverse = require('estraverse');
  4. class LiteralObfuscator extends NodeObfuscator_1.NodeObfuscator {
  5. obfuscateNode(literalNode, parentNode) {
  6. if (parentNode.type === 'Property' && parentNode.key === literalNode) {
  7. return;
  8. }
  9. switch (typeof literalNode.value) {
  10. case 'string':
  11. if (literalNode['x-verbatim-property']) {
  12. break;
  13. }
  14. literalNode['x-verbatim-property'] = {
  15. content: this.replaceLiteralStringByArrayElement(literalNode.value),
  16. precedence: escodegen.Precedence.Primary
  17. };
  18. break;
  19. }
  20. }
  21. }
  22. exports.LiteralObfuscator = LiteralObfuscator;
  23. //# sourceMappingURL=LiteralObfuscator.js.map