Socket
Socket
Sign inDemoInstall

eslint-plugin-no-unsanitized

Package Overview
Dependencies
Maintainers
1
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-no-unsanitized - npm Package Compare versions

Comparing version 3.0.1 to 3.0.2

24

lib/ruleHelper.js

@@ -16,6 +16,9 @@ /**

* @param {Object} context ESLint configuration context
* @param {Object} defaultRuleChecks Default rules to merge with
* this.context
*
*/
function RuleHelper(context) {
function RuleHelper(context, defaultRuleChecks) {
this.context = context;
this.ruleChecks = this.combineRuleChecks(defaultRuleChecks);
}

@@ -216,13 +219,10 @@

* @param {Object} node Call expression node
* @param {Object} defaultRuleChecks Default rules to merge with
* this.context
* @returns {undefined} Does not return
*/
checkMethod(node, defaultRuleChecks) {
const ruleChecks = this.combineRuleChecks(defaultRuleChecks);
checkMethod(node) {
const normalizeMethodCall = this.normalizeMethodCall(node.callee);
const methodName = normalizeMethodCall.methodName;
if (ruleChecks.hasOwnProperty(methodName)) {
const ruleCheck = ruleChecks[methodName];
if (this.ruleChecks.hasOwnProperty(methodName)) {
const ruleCheck = this.ruleChecks[methodName];
if (!Array.isArray(ruleCheck.properties)) {

@@ -245,11 +245,7 @@ this.context.report(node, `Method check requires properties array in eslint rule ${methodName}`);

* @param {Object} node Assignment expression node
* @param {Object} defaultRuleChecks Default rules to merge with
* this.context
* @returns {undefined} Does not return
*/
checkProperty(node, defaultRuleChecks) {
const ruleChecks = this.combineRuleChecks(defaultRuleChecks);
if (ruleChecks.hasOwnProperty(node.left.property.name)) {
const ruleCheck = ruleChecks[node.left.property.name];
checkProperty(node) {
if (this.ruleChecks.hasOwnProperty(node.left.property.name)) {
const ruleCheck = this.ruleChecks[node.left.property.name];
if (!this.allowedExpression(node.right, ruleCheck.escape)) {

@@ -256,0 +252,0 @@ this.context.report(node, `Unsafe assignment to ${node.left.property.name}`);

@@ -57,3 +57,3 @@ /* global module */

if (callExpr.arguments.length > 0) {
ruleHelper.checkMethod(callExpr, defaultRuleChecks);
ruleHelper.checkMethod(callExpr);
}

@@ -98,5 +98,5 @@ break;

create(context) {
const ruleHelper = new RuleHelper(context, defaultRuleChecks);
return {
CallExpression(node) {
const ruleHelper = new RuleHelper(context);
checkCallExpression(ruleHelper, node, node.callee);

@@ -103,0 +103,0 @@ }

@@ -42,3 +42,3 @@ /* global module */

create(context) {
const ruleHelper = new RuleHelper(context);
const ruleHelper = new RuleHelper(context, defaultRuleChecks);

@@ -64,3 +64,3 @@ // operators to not check, such as X.innerHTML *= 12; is likely very safe

}
ruleHelper.checkProperty(node, defaultRuleChecks);
ruleHelper.checkProperty(node);
}

@@ -67,0 +67,0 @@ }

{
"name": "eslint-plugin-no-unsanitized",
"description": "ESLint rule to disallow unsanitized code",
"version": "3.0.1",
"version": "3.0.2",
"author": {

@@ -14,3 +14,3 @@ "name": "Frederik Braun et al."

"eslint": "^4.16.0",
"mocha": "^3.2.0"
"mocha": "^5.1.1"
},

@@ -17,0 +17,0 @@ "peerDependencies": {

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