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

eslint-plugin-react-naming-convention

Package Overview
Dependencies
Maintainers
0
Versions
1063
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-react-naming-convention - npm Package Compare versions

Comparing version

to
1.29.1-next.6

26

dist/index.d.ts
import * as _typescript_eslint_utils_ts_eslint from '@typescript-eslint/utils/ts-eslint';
import { RulePreset } from '@eslint-react/shared';
type MessageID$2 = "useJsxFileExtension" | "useJsxFileExtensionAsNeeded";
type MessageID$1 = "useJsxFileExtension" | "useNonJsxFileExtension";
type MessageID$1 = "filenameCaseMismatch" | "filenameEmpty";
type MessageID = "filenameEmpty" | "filenameInvalid";
type MessageID = "usePascalCase" | "useConstantCase";
declare const _default: {

@@ -20,3 +18,3 @@ configs: {

readonly rules: {
readonly "component-name": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID, readonly [("CONSTANT_CASE" | "PascalCase") | {
readonly "component-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", readonly [("CONSTANT_CASE" | "PascalCase") | {
allowAllCaps?: boolean;

@@ -28,4 +26,4 @@ allowLeadingUnderscore?: boolean;

} | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "context-name": _typescript_eslint_utils_ts_eslint.RuleModule<"contextName", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly filename: _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$1, readonly [("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
readonly "context-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly filename: _typescript_eslint_utils_ts_eslint.RuleModule<MessageID, readonly [("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
excepts?: readonly string[];

@@ -35,3 +33,3 @@ extensions?: readonly string[];

} | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "filename-extension": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$2, readonly [("always" | "as-needed") | {
readonly "filename-extension": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$1, readonly [("always" | "as-needed") | {
allow?: "always" | "as-needed";

@@ -41,3 +39,3 @@ extensions?: readonly string[];

} | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "use-state": _typescript_eslint_utils_ts_eslint.RuleModule<"badValueOrSetterName", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "use-state": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
};

@@ -59,3 +57,3 @@ };

rules: {
readonly "component-name": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID, readonly [("CONSTANT_CASE" | "PascalCase") | {
readonly "component-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", readonly [("CONSTANT_CASE" | "PascalCase") | {
allowAllCaps?: boolean;

@@ -67,4 +65,4 @@ allowLeadingUnderscore?: boolean;

} | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "context-name": _typescript_eslint_utils_ts_eslint.RuleModule<"contextName", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly filename: _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$1, readonly [("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
readonly "context-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly filename: _typescript_eslint_utils_ts_eslint.RuleModule<MessageID, readonly [("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
excepts?: readonly string[];

@@ -74,3 +72,3 @@ extensions?: readonly string[];

} | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "filename-extension": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$2, readonly [("always" | "as-needed") | {
readonly "filename-extension": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$1, readonly [("always" | "as-needed") | {
allow?: "always" | "as-needed";

@@ -80,3 +78,3 @@ extensions?: readonly string[];

} | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "use-state": _typescript_eslint_utils_ts_eslint.RuleModule<"badValueOrSetterName", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
readonly "use-state": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
};

@@ -83,0 +81,0 @@ };

@@ -5,5 +5,5 @@ 'use strict';

var core = require('@eslint-react/core');
var eff = require('@eslint-react/eff');
var JSX = require('@eslint-react/jsx');
var shared = require('@eslint-react/shared');
var eff = require('@eslint-react/eff');
var types = require('@typescript-eslint/types');

@@ -58,3 +58,3 @@ var tsPattern = require('ts-pattern');

var name2 = "eslint-plugin-react-naming-convention";
var version = "1.29.1-next.5";
var version = "1.29.1-next.6";
var createRule = shared.createRuleForPlugin("naming-convention");

@@ -112,5 +112,5 @@

}
function getViolationMessage(name3, options) {
if (name3 == null) return eff._;
if (options.excepts.some((regex) => regex.test(name3))) return eff._;
function isValidComponentName(name3, options) {
if (name3 == null) return true;
if (options.excepts.some((regex) => regex.test(name3))) return true;
let normalized = name3.split(".").at(-1) ?? name3;

@@ -121,10 +121,8 @@ if (options.allowNamespace) normalized = normalized.replace(":", "");

case "CONSTANT_CASE":
return shared.RE_CONSTANT_CASE.test(normalized) ? eff._ : "useConstantCase";
return shared.RE_CONSTANT_CASE.test(normalized);
case "PascalCase":
if (normalized.length > 3 && /^[A-Z]+$/u.test(normalized)) {
return options.allowAllCaps ? eff._ : "usePascalCase";
return options.allowAllCaps;
}
return shared.RE_PASCAL_CASE.test(normalized) ? eff._ : "usePascalCase";
default:
return eff._;
return shared.RE_PASCAL_CASE.test(normalized);
}

@@ -137,7 +135,6 @@ }

docs: {
description: "enforce component naming convention to 'PascalCase' or 'CONSTANT_CASE'"
description: "enforce naming convention for components"
},
messages: {
useConstantCase: "Component name '{{name}}' must be in CONSTANT_CASE.",
usePascalCase: "Component name '{{name}}' must be in PascalCase."
invalid: "A component name '{{name}}' does not match {{rule}}."
},

@@ -149,2 +146,3 @@ schema

const options = normalizeOptions(context.options);
const { rule } = options;
const collector = core.useComponentCollector(context);

@@ -160,10 +158,7 @@ const collectorLegacy = core.useComponentCollectorLegacy();

}
const violation = getViolationMessage(name3, options);
if (violation == null) return;
if (isValidComponentName(name3, options)) return;
context.report({
messageId: violation,
messageId: "invalid",
node,
data: {
name: name3
}
data: { name: name3, rule }
});

@@ -178,10 +173,7 @@ },

const name3 = id.name;
const violation = getViolationMessage(name3, options);
if (violation == null) continue;
if (isValidComponentName(name3, options)) return;
context.report({
messageId: violation,
messageId: "invalid",
node: id,
data: {
name: name3
}
data: { name: name3, rule }
});

@@ -193,10 +185,7 @@ }

const name3 = id.name;
const violation = getViolationMessage(name3, options);
if (violation == null) continue;
if (isValidComponentName(name3, options)) continue;
context.report({
messageId: violation,
messageId: "invalid",
node: id,
data: {
case: options.rule
}
data: { name: name3, rule }
});

@@ -214,6 +203,6 @@ }

docs: {
description: "enforces context name to be a valid component name with the suffix 'Context'"
description: "enforce context name to be a valid component name with the suffix 'Context'"
},
messages: {
contextName: "In React 19, you can render '<Context>' as a provider instead of '<Context.Provider>', it's name must be a valid component name with the suffix 'Context'."
invalid: "A context name must be a valid component name with the suffix 'Context'."
},

@@ -233,3 +222,3 @@ schema: []

context.report({
messageId: "contextName",
messageId: "invalid",
node: id

@@ -287,4 +276,4 @@ });

messages: {
filenameCaseMismatch: "A file with name '{{name}}' does not match {{rule}}. Should rename to '{{suggestion}}'.",
filenameEmpty: "A file must have non-empty name."
filenameEmpty: "A file must have non-empty name.",
filenameInvalid: "A file with name '{{name}}' does not match {{rule}}. Rename it to '{{suggestion}}'."
},

@@ -317,3 +306,3 @@ schema: schema2

context.report({
messageId: "filenameCaseMismatch",
messageId: "filenameInvalid",
node,

@@ -376,3 +365,3 @@ data: {

useJsxFileExtension: "Use {{extensions}} file extension for JSX files.",
useJsxFileExtensionAsNeeded: "Do not use {{extensions}} file extension for files without JSX."
useNonJsxFileExtension: "Do not use {{extensions}} file extension for files without JSX."
},

@@ -416,3 +405,3 @@ schema: schema3

context.report({
messageId: "useJsxFileExtensionAsNeeded",
messageId: "useNonJsxFileExtension",
node,

@@ -441,3 +430,3 @@ data: {

messages: {
badValueOrSetterName: "An useState call is not destructured into value + setter pair."
invalid: "An useState call is not destructured into value + setter pair."
},

@@ -451,7 +440,7 @@ schema: []

if (node.parent.type !== types.AST_NODE_TYPES.VariableDeclarator) {
context.report({ messageId: "badValueOrSetterName", node });
context.report({ messageId: "invalid", node });
}
const id = core.getInstanceId(node);
if (id?.type !== types.AST_NODE_TYPES.ArrayPattern) {
context.report({ messageId: "badValueOrSetterName", node });
context.report({ messageId: "invalid", node });
return;

@@ -461,3 +450,3 @@ }

if (value == null || setter == null) {
context.report({ messageId: "badValueOrSetterName", node });
context.report({ messageId: "invalid", node });
return;

@@ -467,3 +456,3 @@ }

if (setterName == null || !setterName.startsWith("set")) {
context.report({ messageId: "badValueOrSetterName", node });
context.report({ messageId: "invalid", node });
return;

@@ -481,3 +470,3 @@ }

if (valueName == null || `set_${valueName}` !== stringTs.snakeCase(setterName)) {
context.report({ messageId: "badValueOrSetterName", node });
context.report({ messageId: "invalid", node });
return;

@@ -484,0 +473,0 @@ }

{
"name": "eslint-plugin-react-naming-convention",
"version": "1.29.1-next.5",
"version": "1.29.1-next.6",
"description": "ESLint React's ESLint plugin for naming convention related rules.",

@@ -52,8 +52,8 @@ "keywords": [

"ts-pattern": "^5.6.2",
"@eslint-react/ast": "1.29.1-next.5",
"@eslint-react/eff": "1.29.1-next.5",
"@eslint-react/shared": "1.29.1-next.5",
"@eslint-react/jsx": "1.29.1-next.5",
"@eslint-react/core": "1.29.1-next.5",
"@eslint-react/var": "1.29.1-next.5"
"@eslint-react/ast": "1.29.1-next.6",
"@eslint-react/eff": "1.29.1-next.6",
"@eslint-react/jsx": "1.29.1-next.6",
"@eslint-react/shared": "1.29.1-next.6",
"@eslint-react/core": "1.29.1-next.6",
"@eslint-react/var": "1.29.1-next.6"
},

@@ -60,0 +60,0 @@ "devDependencies": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet