New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

eslint-plugin-early-return

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-early-return - npm Package Compare versions

Comparing version 0.0.3 to 0.0.4

12

dist/index.js
import { ESLintUtils, AST_NODE_TYPES } from '@typescript-eslint/utils';
var version = "0.0.3";
var version = "0.0.4";

@@ -8,2 +8,8 @@ const createRule = ESLintUtils.RuleCreator((name)=>`https://github.com/hyoban/eslint-plugin-early-return/blob/main/src/rules/${name}.`);

// eslint-disable-next-line unused-imports/no-unused-imports
function getIndentation(node) {
return ' '.repeat(node.loc.start.column);
}
function isNodeNeedEarlyReturn(node) {
return node.type === AST_NODE_TYPES.ReturnStatement || node.type === AST_NODE_TYPES.ThrowStatement || node.type === AST_NODE_TYPES.ContinueStatement;
}
const rule = createRule({

@@ -29,3 +35,3 @@ name: 'prefer-early-return',

}
if (node.alternate.type === AST_NODE_TYPES.ReturnStatement || node.alternate.type === AST_NODE_TYPES.ThrowStatement || node.alternate.type === AST_NODE_TYPES.BlockStatement && node.alternate.body.some((statement)=>statement.type === AST_NODE_TYPES.ReturnStatement || statement.type === AST_NODE_TYPES.ThrowStatement)) {
if (isNodeNeedEarlyReturn(node.alternate) || node.alternate.type === AST_NODE_TYPES.BlockStatement && node.alternate.body.some((statement)=>isNodeNeedEarlyReturn(statement))) {
context.report({

@@ -37,3 +43,3 @@ node: node.alternate,

let ifText = context.sourceCode.getText(node.consequent);
ifText = ifText.startsWith('{') && ifText.endsWith('}') ? ifText.replace(/^{/, '').replace(/}$/, '').replaceAll('\n ', '\n').slice(1, -1) : ` ${ifText}`;
ifText = ifText.startsWith('{') && ifText.endsWith('}') ? ifText.replace(/^{/, '').replace(/}$/, '').replaceAll('\n ', '\n').slice(1, -1) : `${getIndentation(node)}${ifText}`;
const elseText = context.sourceCode.getText(node.alternate);

@@ -40,0 +46,0 @@ return [

{
"name": "eslint-plugin-early-return",
"type": "module",
"version": "0.0.3",
"version": "0.0.4",
"packageManager": "pnpm@8.15.3",

@@ -6,0 +6,0 @@ "description": "Prefer early return pattern to clean if else statement",

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc