mirror of
https://github.com/javascript-obfuscator/javascript-obfuscator
synced 2026-08-09 12:42:29 +00:00
Moved ScopeThroughIdentifiersTransformer to the obfuscation transformers
This commit is contained in:
@@ -6,15 +6,10 @@ import { INodeTransformer } from '../../../interfaces/node-transformers/INodeTra
|
||||
import { NodeTransformer } from '../../../enums/node-transformers/NodeTransformer';
|
||||
|
||||
import { DeadCodeInjectionTransformer } from '../../../node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer';
|
||||
import { ScopeThroughIdentifiersTransformer } from '../../../node-transformers/dead-code-injection-transformers/ScopeThroughIdentifiersTransformer';
|
||||
|
||||
export const deadCodeInjectionTransformersModule: interfaces.ContainerModule = new ContainerModule((bind: interfaces.Bind) => {
|
||||
// dead code injection
|
||||
bind<INodeTransformer>(ServiceIdentifiers.INodeTransformer)
|
||||
.to(DeadCodeInjectionTransformer)
|
||||
.whenTargetNamed(NodeTransformer.DeadCodeInjectionTransformer);
|
||||
|
||||
bind<INodeTransformer>(ServiceIdentifiers.INodeTransformer)
|
||||
.to(ScopeThroughIdentifiersTransformer)
|
||||
.whenTargetNamed(NodeTransformer.ScopeThroughIdentifiersTransformer);
|
||||
});
|
||||
|
||||
@@ -17,6 +17,7 @@ import { LiteralTransformer } from '../../../node-transformers/obfuscating-trans
|
||||
import { NumberLiteralObfuscatingReplacer } from '../../../node-transformers/obfuscating-transformers/obfuscating-replacers/literal-obfuscating-replacers/NumberLiteralObfuscatingReplacer';
|
||||
import { StringLiteralObfuscatingReplacer } from '../../../node-transformers/obfuscating-transformers/obfuscating-replacers/literal-obfuscating-replacers/StringLiteralObfuscatingReplacer';
|
||||
import { ScopeIdentifiersTransformer } from '../../../node-transformers/obfuscating-transformers/ScopeIdentifiersTransformer';
|
||||
import { ScopeThroughIdentifiersTransformer } from '../../../node-transformers/obfuscating-transformers/ScopeThroughIdentifiersTransformer';
|
||||
|
||||
export const obfuscatingTransformersModule: interfaces.ContainerModule = new ContainerModule((bind: interfaces.Bind) => {
|
||||
// obfuscating transformers
|
||||
@@ -32,6 +33,10 @@ export const obfuscatingTransformersModule: interfaces.ContainerModule = new Con
|
||||
.to(ScopeIdentifiersTransformer)
|
||||
.whenTargetNamed(NodeTransformer.ScopeIdentifiersTransformer);
|
||||
|
||||
bind<INodeTransformer>(ServiceIdentifiers.INodeTransformer)
|
||||
.to(ScopeThroughIdentifiersTransformer)
|
||||
.whenTargetNamed(NodeTransformer.ScopeThroughIdentifiersTransformer);
|
||||
|
||||
// literal obfuscating replacers
|
||||
bind<IObfuscatingReplacer>(ServiceIdentifiers.IObfuscatingReplacer)
|
||||
.to(BooleanLiteralObfuscatingReplacer)
|
||||
|
||||
@@ -363,12 +363,6 @@ export class DeadCodeInjectionTransformer extends AbstractNodeTransformer {
|
||||
NodeUtils.parentizeAst(hostNode);
|
||||
NodeUtils.parentizeNode(hostNode, hostNode);
|
||||
|
||||
this.transformersRunner.transform(
|
||||
hostNode,
|
||||
DeadCodeInjectionTransformer.transformersToRenameBlockScopeIdentifiers,
|
||||
NodeTransformationStage.DeadCodeInjection
|
||||
);
|
||||
|
||||
this.transformersRunner.transform(
|
||||
hostNode,
|
||||
DeadCodeInjectionTransformer.transformersToRenameBlockScopeIdentifiers,
|
||||
|
||||
+2
-2
@@ -21,7 +21,7 @@ import { AbstractNodeTransformer } from '../AbstractNodeTransformer';
|
||||
import { NodeGuards } from '../../node/NodeGuards';
|
||||
|
||||
/**
|
||||
* Renames all through identifiers for Dead Code Injection
|
||||
* Renames all through identifiers. Now used directly from Dead Code Injection transformer
|
||||
*/
|
||||
@injectable()
|
||||
export class ScopeThroughIdentifiersTransformer extends AbstractNodeTransformer {
|
||||
@@ -62,7 +62,7 @@ export class ScopeThroughIdentifiersTransformer extends AbstractNodeTransformer
|
||||
*/
|
||||
public getVisitor (nodeTransformationStage: NodeTransformationStage): IVisitor | null {
|
||||
switch (nodeTransformationStage) {
|
||||
case NodeTransformationStage.DeadCodeInjection:
|
||||
case NodeTransformationStage.Obfuscating:
|
||||
return {
|
||||
enter: (node: ESTree.Node, parentNode: ESTree.Node | null): ESTree.Node | undefined => {
|
||||
if (parentNode && NodeGuards.isProgramNode(node)) {
|
||||
Reference in New Issue
Block a user