Browse Source

slightly stronger tslint rules

sanex3339 8 years ago
parent
commit
d614915575

File diff suppressed because it is too large
+ 167 - 173
dist/index.js


+ 7 - 7
package.json

@@ -1,6 +1,6 @@
 {
   "name": "javascript-obfuscator",
-  "version": "0.9.0-dev.8",
+  "version": "0.9.0-dev.9",
   "description": "JavaScript obfuscator",
   "keywords": [
     "obfuscator",
@@ -23,7 +23,7 @@
     "babel-polyfill": "^6.20.0",
     "babel-runtime": "^6.20.0",
     "chance": "1.0.4",
-    "class-validator": "0.6.6",
+    "class-validator": "0.6.8",
     "commander": "2.9.0",
     "escodegen": "1.8.1",
     "esprima": "3.1.3",
@@ -44,10 +44,10 @@
     "@types/esprima": "2.1.33",
     "@types/estraverse": "0.0.6",
     "@types/estree": "0.0.34",
-    "@types/lodash": "^4.14.45",
+    "@types/lodash": "^4.14.47",
     "@types/mkdirp": "0.3.29",
-    "@types/mocha": "2.2.35",
-    "@types/node": "6.0.57",
+    "@types/mocha": "2.2.36",
+    "@types/node": "6.0.58",
     "@types/sinon": "1.16.34",
     "@types/string-template": "1.0.2",
     "awesome-typescript-loader": "3.0.0-beta.17",
@@ -61,10 +61,10 @@
     "mocha": "3.2.0",
     "sinon": "2.0.0-pre.4",
     "ts-node": "2.0.0",
-    "tslint": "4.2.0",
+    "tslint": "4.3.1",
     "tslint-loader": "^3.3.0",
     "typescript": "2.1.4",
-    "webpack": "2.2.0-rc.2",
+    "webpack": "2.2.0-rc.3",
     "webpack-node-externals": "1.5.4"
   },
   "repository": {

+ 1 - 1
src/node-transformers/obfuscation-transformers/CatchClauseTransformer.ts

@@ -34,7 +34,7 @@ export class CatchClauseTransformer extends AbstractNodeTransformer {
      * @param replacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) replacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/FunctionDeclarationTransformer.ts

@@ -42,7 +42,7 @@ export class FunctionDeclarationTransformer extends AbstractNodeTransformer {
      * @param nodeObfuscatorsReplacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) nodeObfuscatorsReplacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/FunctionTransformer.ts

@@ -34,7 +34,7 @@ export class FunctionTransformer extends AbstractNodeTransformer {
      * @param nodeObfuscatorsReplacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) nodeObfuscatorsReplacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/LabeledStatementTransformer.ts

@@ -42,7 +42,7 @@ export class LabeledStatementTransformer extends AbstractNodeTransformer {
      * @param nodeObfuscatorsReplacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) nodeObfuscatorsReplacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/LiteralTransformer.ts

@@ -23,7 +23,7 @@ export class LiteralTransformer extends AbstractNodeTransformer {
      * @param replacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) replacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/MemberExpressionTransformer.ts

@@ -23,7 +23,7 @@ export class MemberExpressionTransformer extends AbstractNodeTransformer {
      * @param replacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) replacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/MethodDefinitionTransformer.ts

@@ -37,7 +37,7 @@ export class MethodDefinitionTransformer extends AbstractNodeTransformer {
      * @param replacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) replacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/ObjectExpressionTransformer.ts

@@ -27,7 +27,7 @@ export class ObjectExpressionTransformer extends AbstractNodeTransformer {
     /**
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {
         super(options);

+ 1 - 1
src/node-transformers/obfuscation-transformers/TemplateLiteralTransformer.ts

@@ -27,7 +27,7 @@ export class TemplateLiteralTransformer extends AbstractNodeTransformer {
      * @param replacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) replacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 1 - 1
src/node-transformers/obfuscation-transformers/VariableDeclarationTransformer.ts

@@ -43,7 +43,7 @@ export class VariableDeclarationTransformer extends AbstractNodeTransformer {
      * @param replacersFactory
      * @param options
      */
-    constructor(
+    constructor (
         @inject(ServiceIdentifiers.Factory__IObfuscatorReplacer) replacersFactory: (replacer: NodeObfuscatorsReplacers) => IObfuscationReplacer,
         @inject(ServiceIdentifiers.IOptions) options: IOptions
     ) {

+ 17 - 17
src/node/NodeUtils.ts

@@ -23,20 +23,20 @@ export class NodeUtils {
     ];
 
     /**
-     * @param node
+     * @param astTree
      * @return {T}
      */
-    public static addXVerbatimPropertyToLiterals <T extends ESTree.Node> (node: T): T {
-        NodeUtils.typedReplace(node, NodeType.Literal, {
-            leave: (node: ESTree.Literal) => {
-                node['x-verbatim-property'] = {
-                    content : node.raw,
+    public static addXVerbatimPropertyToLiterals <T extends ESTree.Node> (astTree: T): T {
+        NodeUtils.typedReplace(astTree, NodeType.Literal, {
+            leave: (literalNode: ESTree.Literal) => {
+                literalNode['x-verbatim-property'] = {
+                    content : literalNode.raw,
                     precedence: escodegen.Precedence.Primary
                 };
             }
         });
 
-        return node;
+        return astTree;
     }
 
     /**
@@ -152,13 +152,13 @@ export class NodeUtils {
     }
 
     /**
-     * @param node
+     * @param astTree
      * @return {T}
      */
-    public static parentize <T extends ESTree.Node> (node: T): T {
+    public static parentize <T extends ESTree.Node> (astTree: T): T {
         let isRootNode: boolean = true;
 
-        estraverse.traverse(node, {
+        estraverse.traverse(astTree, {
             enter: (node: ESTree.Node, parentNode: ESTree.Node): any => {
                 let value: ESTree.Node;
 
@@ -180,35 +180,35 @@ export class NodeUtils {
             }
         });
 
-        return node;
+        return astTree;
     }
 
     /**
-     * @param node
+     * @param astTree
      * @param nodeType
      * @param visitor
      */
     public static typedReplace (
-        node: ESTree.Node,
+        astTree: ESTree.Node,
         nodeType: string,
         visitor: {enter?: (node: ESTree.Node) => void, leave?: (node: ESTree.Node) => void},
     ): void {
-        NodeUtils.typedTraverse(node, nodeType, visitor, 'replace');
+        NodeUtils.typedTraverse(astTree, nodeType, visitor, 'replace');
     }
 
     /**
-     * @param node
+     * @param astTree
      * @param nodeType
      * @param visitor
      * @param traverseType
      */
     public static typedTraverse (
-        node: ESTree.Node,
+        astTree: ESTree.Node,
         nodeType: string,
         visitor: estraverse.Visitor,
         traverseType: string = 'traverse'
     ): void {
-        (<any>estraverse)[traverseType](node, {
+        (<any>estraverse)[traverseType](astTree, {
             enter: (node: ESTree.Node, parentNode: ESTree.Node): any => {
                 if (node.type === nodeType && visitor.enter) {
                     return visitor.enter(node, parentNode);

+ 3 - 3
src/stack-trace-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor.ts

@@ -37,14 +37,14 @@ export class FunctionDeclarationCalleeDataExtractor extends AbstractCalleeDataEx
     }
 
     /**
-     * @param node
+     * @param targetNode
      * @param name
      * @returns {ESTree.BlockStatement|null}
      */
-    private getCalleeBlockStatement (node: ESTree.Node, name: string): ESTree.BlockStatement|null {
+    private getCalleeBlockStatement (targetNode: ESTree.Node, name: string): ESTree.BlockStatement|null {
         let calleeBlockStatement: ESTree.BlockStatement|null = null;
 
-        estraverse.traverse(node, {
+        estraverse.traverse(targetNode, {
             enter: (node: ESTree.Node): any => {
                 if (Node.isFunctionDeclarationNode(node) && node.id.name === name) {
                     calleeBlockStatement = node.body;

+ 3 - 3
src/stack-trace-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor.ts

@@ -41,14 +41,14 @@ export class FunctionExpressionCalleeDataExtractor extends AbstractCalleeDataExt
     }
 
     /**
-     * @param node
+     * @param targetNode
      * @param name
      * @returns {ESTree.BlockStatement|null}
      */
-    private getCalleeBlockStatement (node: ESTree.Node, name: string): ESTree.BlockStatement|null {
+    private getCalleeBlockStatement (targetNode: ESTree.Node, name: string): ESTree.BlockStatement|null {
         let calleeBlockStatement: ESTree.BlockStatement|null = null;
 
-        estraverse.traverse(node, {
+        estraverse.traverse(targetNode, {
             enter: (node: ESTree.Node, parentNode: ESTree.Node): any => {
                 if (
                     Node.isFunctionExpressionNode(node) &&

+ 3 - 3
src/stack-trace-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts

@@ -85,12 +85,12 @@ export class ObjectExpressionCalleeDataExtractor extends AbstractCalleeDataExtra
     }
 
     /**
-     * @param node
+     * @param targetNode
      * @param objectMembersCallsChain
      * @returns {ESTree.BlockStatement|null}
      */
     private getCalleeBlockStatement (
-        node: ESTree.Node,
+        targetNode: ESTree.Node,
         objectMembersCallsChain: TObjectMembersCallsChain
     ): ESTree.BlockStatement|null {
         const objectName: string|number|undefined = objectMembersCallsChain.shift();
@@ -101,7 +101,7 @@ export class ObjectExpressionCalleeDataExtractor extends AbstractCalleeDataExtra
 
         let calleeBlockStatement: ESTree.BlockStatement|null = null;
 
-        estraverse.traverse(node, {
+        estraverse.traverse(targetNode, {
             enter: (node: ESTree.Node, parentNode: ESTree.Node): any => {
                 if (
                     Node.isVariableDeclaratorNode(node) &&

+ 1 - 1
src/utils/CryptUtils.ts

@@ -38,7 +38,7 @@ export class CryptUtils {
      * @param length
      * @returns {string[]}
      */
-    public static hideString(str: string, length: number): [string, string] {
+    public static hideString (str: string, length: number): [string, string] {
         const escapeRegExp: (s: string) => string = (s: string) =>
             s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
 

+ 5 - 1
tslint.json

@@ -29,6 +29,7 @@
       true,
       "always-prefix"
     ],
+    "import-spacing": true,
     "jsdoc-format": true,
     "label-position": true,
     "max-line-length": false,
@@ -66,7 +67,7 @@
     "no-parameter-properties": true,
     "no-reference": true,
     "no-require-imports": false,
-    "no-shadowed-variable": false,
+    "no-shadowed-variable": true,
     "no-string-literal": true,
     "no-string-throw": true,
     "no-switch-case-fall-through": false,
@@ -89,6 +90,7 @@
     "quotemark": false,
     "radix": true,
     "semicolon": [true, "always"],
+    "space-before-function-paren": true,
     "switch-default": false,
     "trailing-comma": false,
     "triple-equals": [
@@ -122,6 +124,8 @@
         "variable-declaration": "space"
       }
     ],
+    "typeof-compare": true,
+    "unified-signatures": true,
     "use-isnan": true,
     "variable-name": false,
     "whitespace": [

Some files were not shown because too many files changed in this diff