eslint-plugin-nextfriday 4.3.2 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -0
- package/README.md +9 -38
- package/docs/rules/BOOLEAN_NAMING_PREFIX.md +0 -1
- package/docs/rules/ENFORCE_CONSTANT_CASE.md +0 -2
- package/docs/rules/ENFORCE_READONLY_COMPONENT_PROPS.md +0 -1
- package/docs/rules/INDEX_EXPORT_ONLY.md +7 -0
- package/docs/rules/NO_GHOST_WRAPPER.md +0 -4
- package/docs/rules/NO_LAZY_IDENTIFIERS.md +1 -2
- package/docs/rules/NO_MISLEADING_CONSTANT_CASE.md +0 -1
- package/docs/rules/PREFER_PROPS_WITH_CHILDREN.md +17 -35
- package/docs/rules/SORT_IMPORTS.md +24 -14
- package/lib/index.cjs +110 -690
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.cts +28 -448
- package/lib/index.d.cts.map +1 -1
- package/lib/index.d.ts +28 -448
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +110 -690
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
- package/docs/rules/ENFORCE_CAMEL_CASE.md +0 -68
- package/docs/rules/ENFORCE_PROPERTY_CASE.md +0 -63
- package/docs/rules/NO_INLINE_DEFAULT_EXPORT.md +0 -97
- package/docs/rules/NO_NESTED_TERNARY.md +0 -45
- package/docs/rules/NO_REDUNDANT_FRAGMENT.md +0 -56
- package/docs/rules/NO_SINGLE_CHAR_VARIABLES.md +0 -98
- package/docs/rules/PREFER_FUNCTION_DECLARATION.md +0 -118
- package/docs/rules/PREFER_INLINE_TYPE_EXPORT.md +0 -64
- package/docs/rules/PREFER_JSX_TEMPLATE_LITERALS.md +0 -80
- package/docs/rules/REACT_PROPS_DESTRUCTURE.md +0 -99
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
# react-props-destructure
|
|
2
|
-
|
|
3
|
-
Enforce destructuring props inside React component body instead of parameters.
|
|
4
|
-
|
|
5
|
-
## Rule Details
|
|
6
|
-
|
|
7
|
-
This rule enforces a consistent pattern for handling props in React components by requiring destructuring to be done inside the component body rather than in the parameter list. This promotes better code readability and makes prop usage more explicit.
|
|
8
|
-
|
|
9
|
-
## Examples
|
|
10
|
-
|
|
11
|
-
### Incorrect
|
|
12
|
-
|
|
13
|
-
```jsx
|
|
14
|
-
const Component = ({ children }) => <div>{children}</div>;
|
|
15
|
-
|
|
16
|
-
const Component = ({ title, children, onClick }) => (
|
|
17
|
-
<div onClick={onClick}>
|
|
18
|
-
<h1>{title}</h1>
|
|
19
|
-
{children}
|
|
20
|
-
</div>
|
|
21
|
-
);
|
|
22
|
-
|
|
23
|
-
function Component({ children }) {
|
|
24
|
-
return <div>{children}</div>;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
const Component = function ({ children }) {
|
|
28
|
-
return <div>{children}</div>;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
// Also applies to conditional returns
|
|
32
|
-
const Component = ({ show, children }) => {
|
|
33
|
-
return show ? <div>{children}</div> : null;
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
// And logical operators
|
|
37
|
-
const Component = ({ show, children }) => {
|
|
38
|
-
return show && <div>{children}</div>;
|
|
39
|
-
};
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### Correct
|
|
43
|
-
|
|
44
|
-
```jsx
|
|
45
|
-
const Component = (props) => {
|
|
46
|
-
const { children } = props;
|
|
47
|
-
return <div>{children}</div>;
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
const Component = (props) => {
|
|
51
|
-
const { title, children, onClick } = props;
|
|
52
|
-
|
|
53
|
-
return (
|
|
54
|
-
<div onClick={onClick}>
|
|
55
|
-
<h1>{title}</h1>
|
|
56
|
-
{children}
|
|
57
|
-
</div>
|
|
58
|
-
);
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
function Component(props) {
|
|
62
|
-
const { children } = props;
|
|
63
|
-
return <div>{children}</div>;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
const Component = function (props) {
|
|
67
|
-
const { children } = props;
|
|
68
|
-
return <div>{children}</div>;
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
// Multiple parameters are allowed
|
|
72
|
-
const Component = (props, ref) => {
|
|
73
|
-
return <div>{props.children}</div>;
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
// No parameters is allowed
|
|
77
|
-
const Component = () => {
|
|
78
|
-
return <div>Hello</div>;
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
// Already using props parameter (no destructuring) is allowed
|
|
82
|
-
const Component = (props) => {
|
|
83
|
-
return <div>{props.children}</div>;
|
|
84
|
-
};
|
|
85
|
-
|
|
86
|
-
// Non-React functions are ignored
|
|
87
|
-
const helper = ({ value }) => {
|
|
88
|
-
return value * 2;
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
const regularFunction = ({ data }) => {
|
|
92
|
-
return data.map((item) => item.id);
|
|
93
|
-
};
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
## When Not To Use It
|
|
97
|
-
|
|
98
|
-
- If you prefer parameter destructuring for brevity
|
|
99
|
-
- When working on a codebase that already consistently uses parameter destructuring
|