UNPKG

static-code-analyzer

Version:

Universal static code analysis tool for calculating API operation costs across multiple frameworks (NestJS, Express, Fastify)

130 lines (129 loc) 3.11 kB
{ "operations": { "findMany": 1, "findUnique": 1, "findFirst": 1, "create": 1, "createMany": 2, "update": 1, "updateMany": 2, "upsert": 2, "delete": 1, "deleteMany": 2, "count": 1, "aggregate": 2, "groupBy": 2, "find": 1, "findOne": 1, "findOneBy": 1, "findAndCount": 2, "save": 1, "insert": 1, "remove": 1, "select": 1, "from": 1, "single": 0, "eq": 0, "in": 0, "signInWithPassword": 1, "signUp": 1, "signOut": 1, "refreshSession": 1 }, "patterns": { "prisma": { "pattern": "prisma\\.(\\w+)\\.(findMany|findUnique|findFirst|create|createMany|update|updateMany|upsert|delete|deleteMany|count|aggregate|groupBy)", "description": "Prisma ORM operations" }, "typeorm": { "pattern": "(\\w+Repository|\\w+)\\.((find|findOne|findOneBy|findAndCount|save|insert|update|delete|remove|createQueryBuilder)\\(|getMany|getOne|getRawMany|getRawOne)", "description": "TypeORM operations" }, "mongoose": { "pattern": "(\\w+Model|\\w+)\\.(find|findById|findOne|findOneAndUpdate|findOneAndDelete|findByIdAndUpdate|findByIdAndDelete|save|create|insertMany|updateOne|updateMany|deleteOne|deleteMany|bulkWrite|populate)", "description": "Mongoose ODM operations" }, "supabase": { "pattern": "supabase\\.(from\\(|auth\\.)", "description": "Supabase operations" }, "http_client": { "pattern": "(axios\\.|fetch\\(|httpclient\\.|\\.(get|post|put|patch|delete)\\()", "description": "HTTP client operations" }, "custom_service": { "pattern": "await this\\.(\\w+Service|\\w+Repository)\\.", "description": "Custom service method calls" } }, "parallelExecutionPatterns": [ "Promise.all", "Promise.allSettled", "Promise.race", "await Promise.all", "await Promise.allSettled" ], "ignorePatterns": [ "console.log", "console.error", "console.warn", "JSON.stringify", "JSON.parse", "Math.", "Date.", "new Date", "crypto.", "bcrypt.", "jwt.", "uuid.", "randomBytes", "throw new", "return {", "return new", "const ", "let ", "var ", "if (", "for (", "while (", "switch (", "try {", "catch (" ], "costMultipliers": { "loop": 2, "recursion": 3, "nested": 1.5, "conditional": 1 }, "methodCosts": { "login": { "paths": [ { "name": "Remember Me Token Valid", "conditions": ["rememberMeToken", "token.valid"], "expectedCost": 3 }, { "name": "Remember Me Token Expired", "conditions": ["rememberMeToken", "token.expired"], "expectedCost": 4 }, { "name": "No Remember Me Token", "conditions": ["!rememberMeToken"], "expectedCost": 2 } ] }, "createUser": { "expectedCost": 2 }, "updateUser": { "expectedCost": 1 }, "deleteUser": { "expectedCost": 1 } } }