Explorar o código

concretize scope for bindings

sanex3339 %!s(int64=8) %!d(string=hai) anos
pai
achega
dfda3d01bd

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 256 - 215
dist/index.js


+ 2 - 1
src/container/InversifyContainerFacade.ts

@@ -43,7 +43,8 @@ export class InversifyContainerFacade {
 
 
         this.container
         this.container
             .bind<IObfuscator>(ServiceIdentifiers.IObfuscator)
             .bind<IObfuscator>(ServiceIdentifiers.IObfuscator)
-            .to(Obfuscator);
+            .to(Obfuscator)
+            .inSingletonScope();
 
 
         this.container
         this.container
             .bind<IObfuscationEventEmitter>(ServiceIdentifiers.IObfuscationEventEmitter)
             .bind<IObfuscationEventEmitter>(ServiceIdentifiers.IObfuscationEventEmitter)

+ 1 - 0
src/container/modules/NodeControlFlowTransformersModule.ts

@@ -7,5 +7,6 @@ import { FunctionControlFlowTransformer } from '../../node-transformers/node-con
 export const nodeControlFlowTransformersModule: interfaces.ContainerModule = new ContainerModule((bind: interfaces.Bind) => {
 export const nodeControlFlowTransformersModule: interfaces.ContainerModule = new ContainerModule((bind: interfaces.Bind) => {
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(FunctionControlFlowTransformer)
         .to(FunctionControlFlowTransformer)
+        .inSingletonScope()
         .whenTargetNamed('FunctionControlFlowTransformer');
         .whenTargetNamed('FunctionControlFlowTransformer');
 });
 });

+ 9 - 0
src/container/modules/NodeObfuscatorsModule.ts

@@ -15,37 +15,46 @@ import { VariableDeclarationObfuscator } from '../../node-transformers/node-obfu
 export const nodeObfuscatorsModule: interfaces.ContainerModule = new ContainerModule((bind: interfaces.Bind) => {
 export const nodeObfuscatorsModule: interfaces.ContainerModule = new ContainerModule((bind: interfaces.Bind) => {
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(CatchClauseObfuscator)
         .to(CatchClauseObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('CatchClauseObfuscator');
         .whenTargetNamed('CatchClauseObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(FunctionDeclarationObfuscator)
         .to(FunctionDeclarationObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('FunctionDeclarationObfuscator');
         .whenTargetNamed('FunctionDeclarationObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(FunctionObfuscator)
         .to(FunctionObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('FunctionObfuscator');
         .whenTargetNamed('FunctionObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(LabeledStatementObfuscator)
         .to(LabeledStatementObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('LabeledStatementObfuscator');
         .whenTargetNamed('LabeledStatementObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(LiteralObfuscator)
         .to(LiteralObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('LiteralObfuscator');
         .whenTargetNamed('LiteralObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(MemberExpressionObfuscator)
         .to(MemberExpressionObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('MemberExpressionObfuscator');
         .whenTargetNamed('MemberExpressionObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(MethodDefinitionObfuscator)
         .to(MethodDefinitionObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('MethodDefinitionObfuscator');
         .whenTargetNamed('MethodDefinitionObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(ObjectExpressionObfuscator)
         .to(ObjectExpressionObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('ObjectExpressionObfuscator');
         .whenTargetNamed('ObjectExpressionObfuscator');
 
 
     bind<INodeTransformer>('INodeTransformer')
     bind<INodeTransformer>('INodeTransformer')
         .to(VariableDeclarationObfuscator)
         .to(VariableDeclarationObfuscator)
+        .inSingletonScope()
         .whenTargetNamed('VariableDeclarationObfuscator');
         .whenTargetNamed('VariableDeclarationObfuscator');
 });
 });

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio