Socket
Socket
Sign inDemoInstall

eslint-plugin-isaacscript

Package Overview
Dependencies
127
Maintainers
1
Versions
133
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 3.12.0 to 3.12.1

35

dist/rules/no-unnecessary-assignment.js

@@ -65,5 +65,4 @@ "use strict";

const type = checker.getTypeAtLocation(tsNode);
const flags = type.getFlags();
// We cannot use `isTypeFlagSet` because we do not want to penetrate unions.
return (0, typeUtils_1.isFlagSet)(flags, flag);
return (0, typeUtils_1.isFlagSet)(type.flags, flag);
}

@@ -121,2 +120,22 @@ function isBoolean(node) {

}
function hasNullAndNotUndefined(node) {
if (isNull(node)) {
return true;
}
const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node);
const type = checker.getTypeAtLocation(tsNode);
const types = (0, typeUtils_1.unionTypeParts)(type);
return (types.some((t) => (0, typeUtils_1.isFlagSet)(t.flags, ts.TypeFlags.Null)) &&
!types.some((t) => (0, typeUtils_1.isFlagSet)(t.flags, ts.TypeFlags.Undefined)));
}
function hasUndefinedAndNotNull(node) {
if (isUndefined(node)) {
return true;
}
const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node);
const type = checker.getTypeAtLocation(tsNode);
const types = (0, typeUtils_1.unionTypeParts)(type);
return (types.some((t) => (0, typeUtils_1.isFlagSet)(t.flags, ts.TypeFlags.Undefined)) &&
!types.some((t) => (0, typeUtils_1.isFlagSet)(t.flags, ts.TypeFlags.Null)));
}
function checkEqualSign(node) {

@@ -127,6 +146,4 @@ const leftTSNode = parserServices.esTreeNodeToTSNodeMap.get(node.left);

const rightType = checker.getTypeAtLocation(rightTSNode);
const leftFlags = leftType.getFlags();
const rightFlags = rightType.getFlags();
const isLeftLiteral = (0, typeUtils_1.isFlagSet)(leftFlags, ts.TypeFlags.Literal);
const isRightLiteral = (0, typeUtils_1.isFlagSet)(rightFlags, ts.TypeFlags.Literal);
const isLeftLiteral = (0, typeUtils_1.isFlagSet)(leftType.flags, ts.TypeFlags.Literal);
const isRightLiteral = (0, typeUtils_1.isFlagSet)(rightType.flags, ts.TypeFlags.Literal);
if (isLeftLiteral && isRightLiteral && leftType === rightType) {

@@ -236,3 +253,5 @@ context.report({

}
if (node.operator === "??" && isNull(node.left) && isNull(node.right)) {
if (node.operator === "??" &&
hasNullAndNotUndefined(node.left) &&
isNull(node.right)) {
context.report({

@@ -247,3 +266,3 @@ loc: node.loc,

if (node.operator === "??" &&
isUndefined(node.left) &&
hasUndefinedAndNotNull(node.left) &&
isUndefined(node.right)) {

@@ -250,0 +269,0 @@ context.report({

{
"name": "eslint-plugin-isaacscript",
"version": "3.12.0",
"version": "3.12.1",
"description": "An ESLint plugin that contains useful rules.",

@@ -5,0 +5,0 @@ "keywords": [

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc