@kirklin/eslint-config 2.3.0 → 2.3.2
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/README.md +28 -11
- package/README.zh-cn.md +28 -11
- package/dist/cli.cjs +38 -37
- package/dist/cli.js +38 -37
- package/dist/index.cjs +983 -907
- package/dist/index.d.cts +220 -836
- package/dist/index.d.ts +220 -836
- package/dist/index.js +982 -907
- package/package.json +38 -37
package/dist/index.d.cts
CHANGED
|
@@ -364,6 +364,11 @@ interface RuleOptions {
|
|
|
364
364
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-deprecated-getentrybyslug/
|
|
365
365
|
*/
|
|
366
366
|
'astro/no-deprecated-getentrybyslug'?: Linter.RuleEntry<[]>
|
|
367
|
+
/**
|
|
368
|
+
* disallow value export
|
|
369
|
+
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-exports-from-components/
|
|
370
|
+
*/
|
|
371
|
+
'astro/no-exports-from-components'?: Linter.RuleEntry<[]>
|
|
367
372
|
/**
|
|
368
373
|
* disallow use of `set:html` to prevent XSS attack
|
|
369
374
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-set-html-directive/
|
|
@@ -2824,523 +2829,311 @@ interface RuleOptions {
|
|
|
2824
2829
|
*/
|
|
2825
2830
|
'radix'?: Linter.RuleEntry<Radix>
|
|
2826
2831
|
/**
|
|
2827
|
-
*
|
|
2828
|
-
* @see https://
|
|
2829
|
-
*/
|
|
2830
|
-
'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>
|
|
2831
|
-
/**
|
|
2832
|
-
* enforces the Rules of Hooks
|
|
2833
|
-
* @see https://reactjs.org/docs/hooks-rules.html
|
|
2834
|
-
*/
|
|
2835
|
-
'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>
|
|
2836
|
-
'react-refresh/only-export-components'?: Linter.RuleEntry<ReactRefreshOnlyExportComponents>
|
|
2837
|
-
/**
|
|
2838
|
-
* Enforces consistent naming for boolean props
|
|
2839
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/boolean-prop-naming.md
|
|
2840
|
-
*/
|
|
2841
|
-
'react/boolean-prop-naming'?: Linter.RuleEntry<ReactBooleanPropNaming>
|
|
2842
|
-
/**
|
|
2843
|
-
* Disallow usage of `button` elements without an explicit `type` attribute
|
|
2844
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/button-has-type.md
|
|
2845
|
-
*/
|
|
2846
|
-
'react/button-has-type'?: Linter.RuleEntry<ReactButtonHasType>
|
|
2847
|
-
/**
|
|
2848
|
-
* Enforce using `onChange` or `readonly` attribute when `checked` is used
|
|
2849
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/checked-requires-onchange-or-readonly.md
|
|
2850
|
-
*/
|
|
2851
|
-
'react/checked-requires-onchange-or-readonly'?: Linter.RuleEntry<ReactCheckedRequiresOnchangeOrReadonly>
|
|
2852
|
-
/**
|
|
2853
|
-
* Enforce all defaultProps have a corresponding non-required PropType
|
|
2854
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/default-props-match-prop-types.md
|
|
2832
|
+
* disallow passing 'children' to void DOM elements
|
|
2833
|
+
* @see https://eslint-react.xyz/rules/dom-no-children-in-void-dom-elements
|
|
2855
2834
|
*/
|
|
2856
|
-
'react/
|
|
2835
|
+
'react-dom/no-children-in-void-dom-elements'?: Linter.RuleEntry<[]>
|
|
2857
2836
|
/**
|
|
2858
|
-
*
|
|
2859
|
-
* @see https://
|
|
2837
|
+
* disallow when a DOM component is using 'dangerouslySetInnerHTML'
|
|
2838
|
+
* @see https://eslint-react.xyz/rules/dom-no-dangerously-set-innerhtml
|
|
2860
2839
|
*/
|
|
2861
|
-
'react/
|
|
2840
|
+
'react-dom/no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>
|
|
2862
2841
|
/**
|
|
2863
|
-
*
|
|
2864
|
-
* @see https://
|
|
2842
|
+
* disallow when a DOM component is using both 'children' and 'dangerouslySetInnerHTML'
|
|
2843
|
+
* @see https://eslint-react.xyz/rules/dom-no-dangerously-set-innerhtml-with-children
|
|
2865
2844
|
*/
|
|
2866
|
-
'react/
|
|
2845
|
+
'react-dom/no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>
|
|
2867
2846
|
/**
|
|
2868
|
-
*
|
|
2869
|
-
* @see https://
|
|
2847
|
+
* disallow 'findDOMNode'
|
|
2848
|
+
* @see https://eslint-react.xyz/rules/dom-no-find-dom-node
|
|
2870
2849
|
*/
|
|
2871
|
-
'react/
|
|
2850
|
+
'react-dom/no-find-dom-node'?: Linter.RuleEntry<[]>
|
|
2872
2851
|
/**
|
|
2873
|
-
*
|
|
2874
|
-
* @see https://
|
|
2852
|
+
* enforce that button component have an explicit 'type' attribute
|
|
2853
|
+
* @see https://eslint-react.xyz/rules/dom-no-missing-button-type
|
|
2875
2854
|
*/
|
|
2876
|
-
'react
|
|
2855
|
+
'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>
|
|
2877
2856
|
/**
|
|
2878
|
-
*
|
|
2879
|
-
* @see https://
|
|
2857
|
+
* enforce that 'iframe' component have an explicit 'sandbox' attribute
|
|
2858
|
+
* @see https://eslint-react.xyz/rules/dom-no-missing-iframe-sandbox
|
|
2880
2859
|
*/
|
|
2881
|
-
'react/
|
|
2860
|
+
'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>
|
|
2882
2861
|
/**
|
|
2883
|
-
*
|
|
2884
|
-
* @see https://
|
|
2885
|
-
*/
|
|
2886
|
-
'react/forbid-foreign-prop-types'?: Linter.RuleEntry<ReactForbidForeignPropTypes>
|
|
2887
|
-
/**
|
|
2888
|
-
* Disallow certain propTypes
|
|
2889
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/forbid-prop-types.md
|
|
2890
|
-
*/
|
|
2891
|
-
'react/forbid-prop-types'?: Linter.RuleEntry<ReactForbidPropTypes>
|
|
2892
|
-
/**
|
|
2893
|
-
* Enforce a specific function type for function components
|
|
2894
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/function-component-definition.md
|
|
2895
|
-
*/
|
|
2896
|
-
'react/function-component-definition'?: Linter.RuleEntry<ReactFunctionComponentDefinition>
|
|
2897
|
-
/**
|
|
2898
|
-
* Ensure destructuring and symmetric naming of useState hook value and setter variables
|
|
2899
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/hook-use-state.md
|
|
2900
|
-
*/
|
|
2901
|
-
'react/hook-use-state'?: Linter.RuleEntry<ReactHookUseState>
|
|
2902
|
-
/**
|
|
2903
|
-
* Enforce sandbox attribute on iframe elements
|
|
2904
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/iframe-missing-sandbox.md
|
|
2905
|
-
*/
|
|
2906
|
-
'react/iframe-missing-sandbox'?: Linter.RuleEntry<[]>
|
|
2907
|
-
/**
|
|
2908
|
-
* Enforce boolean attributes notation in JSX
|
|
2909
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-boolean-value.md
|
|
2910
|
-
*/
|
|
2911
|
-
'react/jsx-boolean-value'?: Linter.RuleEntry<ReactJsxBooleanValue>
|
|
2912
|
-
/**
|
|
2913
|
-
* Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
|
|
2914
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-child-element-spacing.md
|
|
2915
|
-
*/
|
|
2916
|
-
'react/jsx-child-element-spacing'?: Linter.RuleEntry<[]>
|
|
2917
|
-
/**
|
|
2918
|
-
* Enforce closing bracket location in JSX
|
|
2919
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-closing-bracket-location.md
|
|
2920
|
-
*/
|
|
2921
|
-
'react/jsx-closing-bracket-location'?: Linter.RuleEntry<ReactJsxClosingBracketLocation>
|
|
2922
|
-
/**
|
|
2923
|
-
* Enforce closing tag location for multiline JSX
|
|
2924
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-closing-tag-location.md
|
|
2925
|
-
*/
|
|
2926
|
-
'react/jsx-closing-tag-location'?: Linter.RuleEntry<[]>
|
|
2927
|
-
/**
|
|
2928
|
-
* Disallow unnecessary JSX expressions when literals alone are sufficient or enforce JSX expressions on literals in JSX children or attributes
|
|
2929
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-curly-brace-presence.md
|
|
2930
|
-
*/
|
|
2931
|
-
'react/jsx-curly-brace-presence'?: Linter.RuleEntry<ReactJsxCurlyBracePresence>
|
|
2932
|
-
/**
|
|
2933
|
-
* Enforce consistent linebreaks in curly braces in JSX attributes and expressions
|
|
2934
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-curly-newline.md
|
|
2935
|
-
*/
|
|
2936
|
-
'react/jsx-curly-newline'?: Linter.RuleEntry<ReactJsxCurlyNewline>
|
|
2937
|
-
/**
|
|
2938
|
-
* Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
|
|
2939
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-curly-spacing.md
|
|
2940
|
-
*/
|
|
2941
|
-
'react/jsx-curly-spacing'?: Linter.RuleEntry<ReactJsxCurlySpacing>
|
|
2942
|
-
/**
|
|
2943
|
-
* Enforce or disallow spaces around equal signs in JSX attributes
|
|
2944
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-equals-spacing.md
|
|
2945
|
-
*/
|
|
2946
|
-
'react/jsx-equals-spacing'?: Linter.RuleEntry<ReactJsxEqualsSpacing>
|
|
2947
|
-
/**
|
|
2948
|
-
* Disallow file extensions that may contain JSX
|
|
2949
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-filename-extension.md
|
|
2950
|
-
*/
|
|
2951
|
-
'react/jsx-filename-extension'?: Linter.RuleEntry<ReactJsxFilenameExtension>
|
|
2952
|
-
/**
|
|
2953
|
-
* Enforce proper position of the first property in JSX
|
|
2954
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-first-prop-new-line.md
|
|
2955
|
-
*/
|
|
2956
|
-
'react/jsx-first-prop-new-line'?: Linter.RuleEntry<ReactJsxFirstPropNewLine>
|
|
2957
|
-
/**
|
|
2958
|
-
* Enforce shorthand or standard form for React fragments
|
|
2959
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-fragments.md
|
|
2960
|
-
*/
|
|
2961
|
-
'react/jsx-fragments'?: Linter.RuleEntry<ReactJsxFragments>
|
|
2962
|
-
/**
|
|
2963
|
-
* Enforce event handler naming conventions in JSX
|
|
2964
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-handler-names.md
|
|
2965
|
-
*/
|
|
2966
|
-
'react/jsx-handler-names'?: Linter.RuleEntry<ReactJsxHandlerNames>
|
|
2967
|
-
/**
|
|
2968
|
-
* Enforce JSX indentation
|
|
2969
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-indent.md
|
|
2970
|
-
*/
|
|
2971
|
-
'react/jsx-indent'?: Linter.RuleEntry<ReactJsxIndent>
|
|
2972
|
-
/**
|
|
2973
|
-
* Enforce props indentation in JSX
|
|
2974
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-indent-props.md
|
|
2975
|
-
*/
|
|
2976
|
-
'react/jsx-indent-props'?: Linter.RuleEntry<ReactJsxIndentProps>
|
|
2977
|
-
/**
|
|
2978
|
-
* Disallow missing `key` props in iterators/collection literals
|
|
2979
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-key.md
|
|
2980
|
-
*/
|
|
2981
|
-
'react/jsx-key'?: Linter.RuleEntry<ReactJsxKey>
|
|
2982
|
-
/**
|
|
2983
|
-
* Enforce JSX maximum depth
|
|
2984
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-max-depth.md
|
|
2985
|
-
*/
|
|
2986
|
-
'react/jsx-max-depth'?: Linter.RuleEntry<ReactJsxMaxDepth>
|
|
2987
|
-
/**
|
|
2988
|
-
* Enforce maximum of props on a single line in JSX
|
|
2989
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-max-props-per-line.md
|
|
2990
|
-
*/
|
|
2991
|
-
'react/jsx-max-props-per-line'?: Linter.RuleEntry<ReactJsxMaxPropsPerLine>
|
|
2992
|
-
/**
|
|
2993
|
-
* Require or prevent a new line after jsx elements and expressions.
|
|
2994
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/jsx-newline.md
|
|
2862
|
+
* enforce that namespaces are not used in React elements
|
|
2863
|
+
* @see https://eslint-react.xyz/rules/dom-no-namespace
|
|
2995
2864
|
*/
|
|
2996
|
-
'react/
|
|
2865
|
+
'react-dom/no-namespace'?: Linter.RuleEntry<[]>
|
|
2997
2866
|
/**
|
|
2998
|
-
*
|
|
2999
|
-
* @see https://
|
|
2867
|
+
* disallow usage of the return value of 'ReactDOM.render'
|
|
2868
|
+
* @see https://eslint-react.xyz/rules/dom-no-render-return-value
|
|
3000
2869
|
*/
|
|
3001
|
-
'react/
|
|
2870
|
+
'react-dom/no-render-return-value'?: Linter.RuleEntry<[]>
|
|
3002
2871
|
/**
|
|
3003
|
-
*
|
|
3004
|
-
* @see https://
|
|
2872
|
+
* disallow 'javascript:' URLs as JSX event handler prop's value
|
|
2873
|
+
* @see https://eslint-react.xyz/rules/dom-no-script-url
|
|
3005
2874
|
*/
|
|
3006
|
-
'react/
|
|
2875
|
+
'react-dom/no-script-url'?: Linter.RuleEntry<[]>
|
|
3007
2876
|
/**
|
|
3008
|
-
*
|
|
3009
|
-
* @see https://
|
|
2877
|
+
* disallow unsafe iframe 'sandbox' attribute combinations
|
|
2878
|
+
* @see https://eslint-react.xyz/rules/dom-no-unsafe-iframe-sandbox
|
|
3010
2879
|
*/
|
|
3011
|
-
'react/
|
|
2880
|
+
'react-dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
|
|
3012
2881
|
/**
|
|
3013
|
-
*
|
|
3014
|
-
* @see https://
|
|
2882
|
+
* disallow 'target="_blank"' on an external link without 'rel="noreferrer noopener"'.
|
|
2883
|
+
* @see https://eslint-react.xyz/rules/dom-no-unsafe-target-blank
|
|
3015
2884
|
*/
|
|
3016
|
-
'react/
|
|
2885
|
+
'react-dom/no-unsafe-target-blank'?: Linter.RuleEntry<[]>
|
|
3017
2886
|
/**
|
|
3018
|
-
*
|
|
3019
|
-
* @see https://
|
|
2887
|
+
* enforce custom hooks using other hooks
|
|
2888
|
+
* @see https://eslint-react.xyz/rules/hooks-extra-ensure-custom-hooks-using-other-hooks
|
|
3020
2889
|
*/
|
|
3021
|
-
'react/
|
|
2890
|
+
'react-hooks-extra/ensure-custom-hooks-using-other-hooks'?: Linter.RuleEntry<[]>
|
|
3022
2891
|
/**
|
|
3023
|
-
*
|
|
3024
|
-
* @see https://
|
|
2892
|
+
* enforce 'useCallback' has non-empty dependencies array
|
|
2893
|
+
* @see https://eslint-react.xyz/rules/hooks-extra-ensure-use-callback-has-non-empty-deps
|
|
3025
2894
|
*/
|
|
3026
|
-
'react/
|
|
2895
|
+
'react-hooks-extra/ensure-use-callback-has-non-empty-deps'?: Linter.RuleEntry<[]>
|
|
3027
2896
|
/**
|
|
3028
|
-
*
|
|
3029
|
-
* @see https://
|
|
2897
|
+
* enforce 'useMemo' has non-empty dependencies array
|
|
2898
|
+
* @see https://eslint-react.xyz/rules/hooks-extra-ensure-use-memo-has-non-empty-deps
|
|
3030
2899
|
*/
|
|
3031
|
-
'react/
|
|
2900
|
+
'react-hooks-extra/ensure-use-memo-has-non-empty-deps'?: Linter.RuleEntry<[]>
|
|
3032
2901
|
/**
|
|
3033
|
-
*
|
|
3034
|
-
* @see https://
|
|
2902
|
+
* disallow function calls in 'useState' that aren't wrapped in an initializer function
|
|
2903
|
+
* @see https://eslint-react.xyz/rules/hooks-extra-prefer-use-state-lazy-initialization
|
|
3035
2904
|
*/
|
|
3036
|
-
'react/
|
|
2905
|
+
'react-hooks-extra/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>
|
|
3037
2906
|
/**
|
|
3038
|
-
*
|
|
3039
|
-
* @see https://github.com/
|
|
2907
|
+
* verifies the list of dependencies for Hooks like useEffect and similar
|
|
2908
|
+
* @see https://github.com/facebook/react/issues/14920
|
|
3040
2909
|
*/
|
|
3041
|
-
'react/
|
|
2910
|
+
'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>
|
|
3042
2911
|
/**
|
|
3043
|
-
*
|
|
3044
|
-
* @see https://
|
|
2912
|
+
* enforces the Rules of Hooks
|
|
2913
|
+
* @see https://reactjs.org/docs/hooks-rules.html
|
|
3045
2914
|
*/
|
|
3046
|
-
'react/
|
|
2915
|
+
'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>
|
|
3047
2916
|
/**
|
|
3048
|
-
*
|
|
3049
|
-
* @see https://
|
|
2917
|
+
* enforce component naming convention to 'PascalCase' or 'CONSTANT_CASE'
|
|
2918
|
+
* @see https://eslint-react.xyz/rules/naming-convention-component-name
|
|
3050
2919
|
*/
|
|
3051
|
-
'react
|
|
2920
|
+
'react-naming-convention/component-name'?: Linter.RuleEntry<ReactNamingConventionComponentName>
|
|
3052
2921
|
/**
|
|
3053
|
-
*
|
|
3054
|
-
* @see https://
|
|
2922
|
+
* enforce naming convention for JSX filenames
|
|
2923
|
+
* @see https://eslint-react.xyz/rules/naming-convention-filename
|
|
3055
2924
|
*/
|
|
3056
|
-
'react
|
|
2925
|
+
'react-naming-convention/filename'?: Linter.RuleEntry<ReactNamingConventionFilename>
|
|
3057
2926
|
/**
|
|
3058
|
-
*
|
|
3059
|
-
* @see https://
|
|
2927
|
+
* enforce naming convention for JSX file extensions
|
|
2928
|
+
* @see https://eslint-react.xyz/rules/naming-convention-filename-extension
|
|
3060
2929
|
*/
|
|
3061
|
-
'react
|
|
2930
|
+
'react-naming-convention/filename-extension'?: Linter.RuleEntry<ReactNamingConventionFilenameExtension>
|
|
3062
2931
|
/**
|
|
3063
|
-
*
|
|
3064
|
-
* @see https://
|
|
2932
|
+
* enforce destructuring and symmetric naming of 'useState' hook value and setter variables
|
|
2933
|
+
* @see https://eslint-react.xyz/rules/naming-convention-use-state
|
|
3065
2934
|
*/
|
|
3066
|
-
'react
|
|
2935
|
+
'react-naming-convention/use-state'?: Linter.RuleEntry<[]>
|
|
2936
|
+
'react-refresh/only-export-components'?: Linter.RuleEntry<ReactRefreshOnlyExportComponents>
|
|
3067
2937
|
/**
|
|
3068
|
-
*
|
|
3069
|
-
* @see https://
|
|
3070
|
-
* @deprecated
|
|
2938
|
+
* require all 'forwardRef' components include a 'ref' parameter
|
|
2939
|
+
* @see https://eslint-react.xyz/rules/ensure-forward-ref-using-ref
|
|
3071
2940
|
*/
|
|
3072
|
-
'react/
|
|
2941
|
+
'react/ensure-forward-ref-using-ref'?: Linter.RuleEntry<[]>
|
|
3073
2942
|
/**
|
|
3074
|
-
*
|
|
3075
|
-
* @see https://
|
|
2943
|
+
* disallow accessing 'this.state' within 'setState'
|
|
2944
|
+
* @see https://eslint-react.xyz/rules/no-access-state-in-setstate
|
|
3076
2945
|
*/
|
|
3077
|
-
'react/
|
|
2946
|
+
'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
|
|
3078
2947
|
/**
|
|
3079
|
-
*
|
|
3080
|
-
* @see https://
|
|
3081
|
-
* @deprecated
|
|
2948
|
+
* disallow using Array index as key
|
|
2949
|
+
* @see https://eslint-react.xyz/rules/no-array-index-key
|
|
3082
2950
|
*/
|
|
3083
|
-
'react/
|
|
2951
|
+
'react/no-array-index-key'?: Linter.RuleEntry<[]>
|
|
3084
2952
|
/**
|
|
3085
|
-
*
|
|
3086
|
-
* @see https://
|
|
2953
|
+
* disallow 'Children.count'
|
|
2954
|
+
* @see https://eslint-react.xyz/rules/no-children-count
|
|
3087
2955
|
*/
|
|
3088
|
-
'react/
|
|
2956
|
+
'react/no-children-count'?: Linter.RuleEntry<[]>
|
|
3089
2957
|
/**
|
|
3090
|
-
*
|
|
3091
|
-
* @see https://
|
|
2958
|
+
* disallow 'Children.forEach'
|
|
2959
|
+
* @see https://eslint-react.xyz/rules/no-children-for-each
|
|
3092
2960
|
*/
|
|
3093
|
-
'react/
|
|
2961
|
+
'react/no-children-for-each'?: Linter.RuleEntry<[]>
|
|
3094
2962
|
/**
|
|
3095
|
-
*
|
|
3096
|
-
* @see https://
|
|
2963
|
+
* disallow 'Children.map'
|
|
2964
|
+
* @see https://eslint-react.xyz/rules/no-children-map
|
|
3097
2965
|
*/
|
|
3098
|
-
'react/
|
|
2966
|
+
'react/no-children-map'?: Linter.RuleEntry<[]>
|
|
3099
2967
|
/**
|
|
3100
|
-
*
|
|
3101
|
-
* @see https://
|
|
2968
|
+
* disallow 'Children.only'
|
|
2969
|
+
* @see https://eslint-react.xyz/rules/no-children-only
|
|
3102
2970
|
*/
|
|
3103
|
-
'react/
|
|
2971
|
+
'react/no-children-only'?: Linter.RuleEntry<[]>
|
|
3104
2972
|
/**
|
|
3105
|
-
*
|
|
3106
|
-
* @see https://
|
|
2973
|
+
* disallow passing of 'children' as props
|
|
2974
|
+
* @see https://eslint-react.xyz/rules/no-children-prop
|
|
3107
2975
|
*/
|
|
3108
|
-
'react/no-
|
|
2976
|
+
'react/no-children-prop'?: Linter.RuleEntry<[]>
|
|
3109
2977
|
/**
|
|
3110
|
-
*
|
|
3111
|
-
* @see https://
|
|
2978
|
+
* disallow 'Children.toArray'
|
|
2979
|
+
* @see https://eslint-react.xyz/rules/no-children-to-array
|
|
3112
2980
|
*/
|
|
3113
|
-
'react/no-
|
|
2981
|
+
'react/no-children-to-array'?: Linter.RuleEntry<[]>
|
|
3114
2982
|
/**
|
|
3115
|
-
*
|
|
3116
|
-
* @see https://
|
|
2983
|
+
* disallow class component
|
|
2984
|
+
* @see https://eslint-react.xyz/rules/no-class-component
|
|
3117
2985
|
*/
|
|
3118
|
-
'react/no-
|
|
2986
|
+
'react/no-class-component'?: Linter.RuleEntry<[]>
|
|
3119
2987
|
/**
|
|
3120
|
-
*
|
|
3121
|
-
* @see https://
|
|
2988
|
+
* disallow 'cloneElement'
|
|
2989
|
+
* @see https://eslint-react.xyz/rules/no-clone-element
|
|
3122
2990
|
*/
|
|
3123
|
-
'react/no-
|
|
2991
|
+
'react/no-clone-element'?: Linter.RuleEntry<[]>
|
|
3124
2992
|
/**
|
|
3125
|
-
*
|
|
3126
|
-
* @see https://
|
|
2993
|
+
* disallow comments from being inserted as text nodes
|
|
2994
|
+
* @see https://eslint-react.xyz/rules/no-comment-textnodes
|
|
3127
2995
|
*/
|
|
3128
|
-
'react/no-
|
|
2996
|
+
'react/no-comment-textnodes'?: Linter.RuleEntry<[]>
|
|
3129
2997
|
/**
|
|
3130
|
-
*
|
|
3131
|
-
* @see https://
|
|
2998
|
+
* disallow complicated conditional rendering
|
|
2999
|
+
* @see https://eslint-react.xyz/rules/no-complicated-conditional-rendering
|
|
3132
3000
|
*/
|
|
3133
|
-
'react/no-
|
|
3001
|
+
'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>
|
|
3134
3002
|
/**
|
|
3135
|
-
*
|
|
3136
|
-
* @see https://
|
|
3003
|
+
* disallow usage of 'componentWillMount'
|
|
3004
|
+
* @see https://eslint-react.xyz/rules/no-component-will-mount
|
|
3137
3005
|
*/
|
|
3138
|
-
'react/no-
|
|
3006
|
+
'react/no-component-will-mount'?: Linter.RuleEntry<[]>
|
|
3139
3007
|
/**
|
|
3140
|
-
*
|
|
3141
|
-
* @see https://
|
|
3008
|
+
* disallow usage of 'componentWillReceiveProps'
|
|
3009
|
+
* @see https://eslint-react.xyz/rules/no-component-will-receive-props
|
|
3142
3010
|
*/
|
|
3143
|
-
'react/no-
|
|
3011
|
+
'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>
|
|
3144
3012
|
/**
|
|
3145
|
-
*
|
|
3146
|
-
* @see https://
|
|
3013
|
+
* disallow usage of 'componentWillUpdate'
|
|
3014
|
+
* @see https://eslint-react.xyz/rules/no-component-will-update
|
|
3147
3015
|
*/
|
|
3148
|
-
'react/no-
|
|
3016
|
+
'react/no-component-will-update'?: Linter.RuleEntry<[]>
|
|
3149
3017
|
/**
|
|
3150
|
-
*
|
|
3151
|
-
* @see https://
|
|
3018
|
+
* disallow 'createRef' in function components
|
|
3019
|
+
* @see https://eslint-react.xyz/rules/no-create-ref
|
|
3152
3020
|
*/
|
|
3153
|
-
'react/no-
|
|
3021
|
+
'react/no-create-ref'?: Linter.RuleEntry<[]>
|
|
3154
3022
|
/**
|
|
3155
|
-
*
|
|
3156
|
-
* @see https://
|
|
3023
|
+
* disallow direct mutation of state
|
|
3024
|
+
* @see https://eslint-react.xyz/rules/no-direct-mutation-state
|
|
3157
3025
|
*/
|
|
3158
3026
|
'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
|
|
3159
3027
|
/**
|
|
3160
|
-
*
|
|
3161
|
-
* @see https://
|
|
3028
|
+
* disallow duplicate keys in 'key' prop when rendering list
|
|
3029
|
+
* @see https://eslint-react.xyz/rules/no-duplicate-key
|
|
3162
3030
|
*/
|
|
3163
|
-
'react/no-
|
|
3031
|
+
'react/no-duplicate-key'?: Linter.RuleEntry<[]>
|
|
3164
3032
|
/**
|
|
3165
|
-
*
|
|
3166
|
-
* @see https://
|
|
3033
|
+
* disallow spreading 'key' from objects.
|
|
3034
|
+
* @see https://eslint-react.xyz/rules/no-implicit-key
|
|
3167
3035
|
*/
|
|
3168
|
-
'react/no-
|
|
3036
|
+
'react/no-implicit-key'?: Linter.RuleEntry<[]>
|
|
3169
3037
|
/**
|
|
3170
|
-
*
|
|
3171
|
-
* @see https://
|
|
3038
|
+
* disallow problematic leaked values from being rendered
|
|
3039
|
+
* @see https://eslint-react.xyz/rules/no-leaked-conditional-rendering
|
|
3172
3040
|
*/
|
|
3173
|
-
'react/no-
|
|
3041
|
+
'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
|
|
3174
3042
|
/**
|
|
3175
|
-
*
|
|
3176
|
-
* @see https://
|
|
3043
|
+
* require 'displayName' for memo and forwardRef components
|
|
3044
|
+
* @see https://eslint-react.xyz/rules/no-missing-component-display-name
|
|
3177
3045
|
*/
|
|
3178
|
-
'react/no-
|
|
3046
|
+
'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
|
|
3179
3047
|
/**
|
|
3180
|
-
*
|
|
3181
|
-
* @see https://
|
|
3048
|
+
* require 'key' prop when rendering list
|
|
3049
|
+
* @see https://eslint-react.xyz/rules/no-missing-key
|
|
3182
3050
|
*/
|
|
3183
|
-
'react/no-
|
|
3051
|
+
'react/no-missing-key'?: Linter.RuleEntry<[]>
|
|
3184
3052
|
/**
|
|
3185
|
-
*
|
|
3186
|
-
* @see https://
|
|
3053
|
+
* disallow usage of unstable nested components
|
|
3054
|
+
* @see https://eslint-react.xyz/rules/no-nested-components
|
|
3187
3055
|
*/
|
|
3188
|
-
'react/no-
|
|
3056
|
+
'react/no-nested-components'?: Linter.RuleEntry<[]>
|
|
3189
3057
|
/**
|
|
3190
|
-
*
|
|
3191
|
-
* @see https://
|
|
3058
|
+
* disallow usage of 'shouldComponentUpdate' in class component extends 'React.PureComponent'
|
|
3059
|
+
* @see https://eslint-react.xyz/rules/no-redundant-should-component-update
|
|
3192
3060
|
*/
|
|
3193
3061
|
'react/no-redundant-should-component-update'?: Linter.RuleEntry<[]>
|
|
3194
3062
|
/**
|
|
3195
|
-
*
|
|
3196
|
-
* @see https://
|
|
3063
|
+
* disallow 'setState' in 'componentDidMount'
|
|
3064
|
+
* @see https://eslint-react.xyz/rules/no-set-state-in-component-did-mount
|
|
3197
3065
|
*/
|
|
3198
|
-
'react/no-
|
|
3066
|
+
'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
|
|
3199
3067
|
/**
|
|
3200
|
-
*
|
|
3201
|
-
* @see https://
|
|
3068
|
+
* disallow 'setState' in 'componentDidUpdate'
|
|
3069
|
+
* @see https://eslint-react.xyz/rules/no-set-state-in-component-did-update
|
|
3202
3070
|
*/
|
|
3203
|
-
'react/no-set-state'?: Linter.RuleEntry<[]>
|
|
3071
|
+
'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
|
|
3204
3072
|
/**
|
|
3205
|
-
*
|
|
3206
|
-
* @see https://
|
|
3073
|
+
* disallow 'setState' in 'componentWillUpdate'
|
|
3074
|
+
* @see https://eslint-react.xyz/rules/no-set-state-in-component-will-update
|
|
3207
3075
|
*/
|
|
3208
|
-
'react/no-
|
|
3076
|
+
'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
|
|
3209
3077
|
/**
|
|
3210
|
-
*
|
|
3211
|
-
* @see https://
|
|
3078
|
+
* disallow using deprecated string refs
|
|
3079
|
+
* @see https://eslint-react.xyz/rules/no-string-refs
|
|
3212
3080
|
*/
|
|
3213
|
-
'react/no-
|
|
3081
|
+
'react/no-string-refs'?: Linter.RuleEntry<[]>
|
|
3214
3082
|
/**
|
|
3215
|
-
*
|
|
3216
|
-
* @see https://
|
|
3083
|
+
* disallow usage of 'UNSAFE_componentWillMount'
|
|
3084
|
+
* @see https://eslint-react.xyz/rules/no-unsafe-component-will-mount
|
|
3217
3085
|
*/
|
|
3218
|
-
'react/no-
|
|
3086
|
+
'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
|
|
3219
3087
|
/**
|
|
3220
|
-
*
|
|
3221
|
-
* @see https://
|
|
3088
|
+
* disallow usage of 'UNSAFE_componentWillReceiveProps'
|
|
3089
|
+
* @see https://eslint-react.xyz/rules/no-unsafe-component-will-receive-props
|
|
3222
3090
|
*/
|
|
3223
|
-
'react/no-
|
|
3091
|
+
'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
|
|
3224
3092
|
/**
|
|
3225
|
-
*
|
|
3226
|
-
* @see https://
|
|
3093
|
+
* disallow usage of 'UNSAFE_componentWillUpdate'
|
|
3094
|
+
* @see https://eslint-react.xyz/rules/no-unsafe-component-will-update
|
|
3227
3095
|
*/
|
|
3228
|
-
'react/no-
|
|
3096
|
+
'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
|
|
3229
3097
|
/**
|
|
3230
|
-
*
|
|
3231
|
-
* @see https://
|
|
3098
|
+
* disallow passing constructed values to context providers
|
|
3099
|
+
* @see https://eslint-react.xyz/rules/no-unstable-context-value
|
|
3232
3100
|
*/
|
|
3233
|
-
'react/no-
|
|
3101
|
+
'react/no-unstable-context-value'?: Linter.RuleEntry<[]>
|
|
3234
3102
|
/**
|
|
3235
|
-
*
|
|
3236
|
-
* @see https://
|
|
3103
|
+
* disallow usage of unstable value as default param in function component
|
|
3104
|
+
* @see https://eslint-react.xyz/rules/no-unstable-default-props
|
|
3237
3105
|
*/
|
|
3238
|
-
'react/no-unstable-
|
|
3106
|
+
'react/no-unstable-default-props'?: Linter.RuleEntry<[]>
|
|
3239
3107
|
/**
|
|
3240
|
-
*
|
|
3241
|
-
* @see https://
|
|
3108
|
+
* disallow unused class component members
|
|
3109
|
+
* @see https://eslint-react.xyz/rules/no-unused-class-component-members
|
|
3242
3110
|
*/
|
|
3243
|
-
'react/no-unused-class-component-
|
|
3111
|
+
'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>
|
|
3244
3112
|
/**
|
|
3245
|
-
*
|
|
3246
|
-
* @see https://
|
|
3247
|
-
*/
|
|
3248
|
-
'react/no-unused-prop-types'?: Linter.RuleEntry<ReactNoUnusedPropTypes>
|
|
3249
|
-
/**
|
|
3250
|
-
* Disallow definitions of unused state
|
|
3251
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/no-unused-state.md
|
|
3113
|
+
* Prevents unused state of class component.
|
|
3114
|
+
* @see https://eslint-react.xyz/rules/no-unused-state
|
|
3252
3115
|
*/
|
|
3253
3116
|
'react/no-unused-state'?: Linter.RuleEntry<[]>
|
|
3254
3117
|
/**
|
|
3255
|
-
*
|
|
3256
|
-
* @see https://
|
|
3257
|
-
*/
|
|
3258
|
-
'react/no-will-update-set-state'?: Linter.RuleEntry<ReactNoWillUpdateSetState>
|
|
3259
|
-
/**
|
|
3260
|
-
* Enforce ES5 or ES6 class for React Components
|
|
3261
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/prefer-es6-class.md
|
|
3262
|
-
*/
|
|
3263
|
-
'react/prefer-es6-class'?: Linter.RuleEntry<ReactPreferEs6Class>
|
|
3264
|
-
/**
|
|
3265
|
-
* Prefer exact proptype definitions
|
|
3266
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/prefer-exact-props.md
|
|
3267
|
-
*/
|
|
3268
|
-
'react/prefer-exact-props'?: Linter.RuleEntry<[]>
|
|
3269
|
-
/**
|
|
3270
|
-
* Enforce that props are read-only
|
|
3271
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/prefer-read-only-props.md
|
|
3272
|
-
*/
|
|
3273
|
-
'react/prefer-read-only-props'?: Linter.RuleEntry<[]>
|
|
3274
|
-
/**
|
|
3275
|
-
* Enforce stateless components to be written as a pure function
|
|
3276
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/prefer-stateless-function.md
|
|
3118
|
+
* disallow unnecessary fragments
|
|
3119
|
+
* @see https://eslint-react.xyz/rules/no-useless-fragment
|
|
3277
3120
|
*/
|
|
3278
|
-
'react/
|
|
3121
|
+
'react/no-useless-fragment'?: Linter.RuleEntry<[]>
|
|
3279
3122
|
/**
|
|
3280
|
-
*
|
|
3281
|
-
* @see https://
|
|
3123
|
+
* enforce using destructuring assignment in component props and context
|
|
3124
|
+
* @see https://eslint-react.xyz/rules/prefer-destructuring-assignment
|
|
3282
3125
|
*/
|
|
3283
|
-
'react/
|
|
3126
|
+
'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>
|
|
3284
3127
|
/**
|
|
3285
|
-
*
|
|
3286
|
-
* @see https://
|
|
3287
|
-
*/
|
|
3288
|
-
'react/react-in-jsx-scope'?: Linter.RuleEntry<[]>
|
|
3289
|
-
/**
|
|
3290
|
-
* Enforce a defaultProps definition for every prop that is not a required prop
|
|
3291
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/require-default-props.md
|
|
3292
|
-
*/
|
|
3293
|
-
'react/require-default-props'?: Linter.RuleEntry<ReactRequireDefaultProps>
|
|
3294
|
-
/**
|
|
3295
|
-
* Enforce React components to have a shouldComponentUpdate method
|
|
3296
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/require-optimization.md
|
|
3297
|
-
*/
|
|
3298
|
-
'react/require-optimization'?: Linter.RuleEntry<ReactRequireOptimization>
|
|
3299
|
-
/**
|
|
3300
|
-
* Enforce ES5 or ES6 class for returning value in render function
|
|
3301
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/require-render-return.md
|
|
3302
|
-
*/
|
|
3303
|
-
'react/require-render-return'?: Linter.RuleEntry<[]>
|
|
3304
|
-
/**
|
|
3305
|
-
* Disallow extra closing tags for components without children
|
|
3306
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/self-closing-comp.md
|
|
3128
|
+
* enforce boolean attributes notation in JSX
|
|
3129
|
+
* @see https://eslint-react.xyz/rules/prefer-shorthand-boolean
|
|
3307
3130
|
*/
|
|
3308
|
-
'react/
|
|
3131
|
+
'react/prefer-shorthand-boolean'?: Linter.RuleEntry<[]>
|
|
3309
3132
|
/**
|
|
3310
|
-
*
|
|
3311
|
-
* @see https://
|
|
3133
|
+
* enforce using fragment syntax instead of Fragment component
|
|
3134
|
+
* @see https://eslint-react.xyz/rules/prefer-shorthand-fragment
|
|
3312
3135
|
*/
|
|
3313
|
-
'react/
|
|
3314
|
-
/**
|
|
3315
|
-
* Enforce defaultProps declarations alphabetical sorting
|
|
3316
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/sort-default-props.md
|
|
3317
|
-
*/
|
|
3318
|
-
'react/sort-default-props'?: Linter.RuleEntry<ReactSortDefaultProps>
|
|
3319
|
-
/**
|
|
3320
|
-
* Enforce propTypes declarations alphabetical sorting
|
|
3321
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/sort-prop-types.md
|
|
3322
|
-
*/
|
|
3323
|
-
'react/sort-prop-types'?: Linter.RuleEntry<ReactSortPropTypes>
|
|
3324
|
-
/**
|
|
3325
|
-
* Enforce class component state initialization style
|
|
3326
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/state-in-constructor.md
|
|
3327
|
-
*/
|
|
3328
|
-
'react/state-in-constructor'?: Linter.RuleEntry<ReactStateInConstructor>
|
|
3329
|
-
/**
|
|
3330
|
-
* Enforces where React component static properties should be positioned.
|
|
3331
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/static-property-placement.md
|
|
3332
|
-
*/
|
|
3333
|
-
'react/static-property-placement'?: Linter.RuleEntry<ReactStaticPropertyPlacement>
|
|
3334
|
-
/**
|
|
3335
|
-
* Enforce style prop value is an object
|
|
3336
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/style-prop-object.md
|
|
3337
|
-
*/
|
|
3338
|
-
'react/style-prop-object'?: Linter.RuleEntry<ReactStylePropObject>
|
|
3339
|
-
/**
|
|
3340
|
-
* Disallow void DOM elements (e.g. `<img />`, `<br />`) from receiving children
|
|
3341
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/void-dom-elements-no-children.md
|
|
3342
|
-
*/
|
|
3343
|
-
'react/void-dom-elements-no-children'?: Linter.RuleEntry<[]>
|
|
3136
|
+
'react/prefer-shorthand-fragment'?: Linter.RuleEntry<[]>
|
|
3344
3137
|
/**
|
|
3345
3138
|
* Disallow assignments that can lead to race conditions due to usage of `await` or `yield`
|
|
3346
3139
|
* @see https://eslint.org/docs/latest/rules/require-atomic-updates
|
|
@@ -9332,7 +9125,7 @@ type NoConsole = []|[{
|
|
|
9332
9125
|
}]
|
|
9333
9126
|
// ----- no-constant-condition -----
|
|
9334
9127
|
type NoConstantCondition = []|[{
|
|
9335
|
-
checkLoops?:
|
|
9128
|
+
checkLoops?: ("all" | "allExceptWhileTrue" | "none" | true | false)
|
|
9336
9129
|
}]
|
|
9337
9130
|
// ----- no-duplicate-imports -----
|
|
9338
9131
|
type NoDuplicateImports = []|[{
|
|
@@ -10243,442 +10036,27 @@ type ReactHooksExhaustiveDeps = []|[{
|
|
|
10243
10036
|
additionalHooks?: string
|
|
10244
10037
|
enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean
|
|
10245
10038
|
}]
|
|
10246
|
-
// ----- react-
|
|
10247
|
-
type
|
|
10248
|
-
|
|
10249
|
-
|
|
10250
|
-
allowExportNames?: string[]
|
|
10251
|
-
}]
|
|
10252
|
-
// ----- react/boolean-prop-naming -----
|
|
10253
|
-
type ReactBooleanPropNaming = []|[{
|
|
10254
|
-
|
|
10255
|
-
propTypeNames?: [string, ...(string)[]]
|
|
10256
|
-
rule?: string
|
|
10257
|
-
message?: string
|
|
10258
|
-
validateNested?: boolean
|
|
10259
|
-
}]
|
|
10260
|
-
// ----- react/button-has-type -----
|
|
10261
|
-
type ReactButtonHasType = []|[{
|
|
10262
|
-
button?: boolean
|
|
10263
|
-
submit?: boolean
|
|
10264
|
-
reset?: boolean
|
|
10265
|
-
}]
|
|
10266
|
-
// ----- react/checked-requires-onchange-or-readonly -----
|
|
10267
|
-
type ReactCheckedRequiresOnchangeOrReadonly = []|[{
|
|
10268
|
-
ignoreMissingProperties?: boolean
|
|
10269
|
-
ignoreExclusiveCheckedAttribute?: boolean
|
|
10270
|
-
}]
|
|
10271
|
-
// ----- react/default-props-match-prop-types -----
|
|
10272
|
-
type ReactDefaultPropsMatchPropTypes = []|[{
|
|
10273
|
-
allowRequiredDefaults?: boolean
|
|
10274
|
-
}]
|
|
10275
|
-
// ----- react/destructuring-assignment -----
|
|
10276
|
-
type ReactDestructuringAssignment = []|[("always" | "never")]|[("always" | "never"), {
|
|
10277
|
-
ignoreClassFields?: boolean
|
|
10278
|
-
destructureInSignature?: ("always" | "ignore")
|
|
10279
|
-
}]
|
|
10280
|
-
// ----- react/display-name -----
|
|
10281
|
-
type ReactDisplayName = []|[{
|
|
10282
|
-
ignoreTranspilerName?: boolean
|
|
10283
|
-
checkContextObjects?: boolean
|
|
10284
|
-
}]
|
|
10285
|
-
// ----- react/forbid-component-props -----
|
|
10286
|
-
type ReactForbidComponentProps = []|[{
|
|
10287
|
-
forbid?: (string | {
|
|
10288
|
-
propName?: string
|
|
10289
|
-
allowedFor?: string[]
|
|
10290
|
-
message?: string
|
|
10291
|
-
} | {
|
|
10292
|
-
propName?: string
|
|
10293
|
-
|
|
10294
|
-
disallowedFor: [string, ...(string)[]]
|
|
10295
|
-
message?: string
|
|
10296
|
-
})[]
|
|
10297
|
-
[k: string]: unknown | undefined
|
|
10298
|
-
}]
|
|
10299
|
-
// ----- react/forbid-dom-props -----
|
|
10300
|
-
type ReactForbidDomProps = []|[{
|
|
10301
|
-
forbid?: (string | {
|
|
10302
|
-
propName?: string
|
|
10303
|
-
disallowedFor?: string[]
|
|
10304
|
-
message?: string
|
|
10305
|
-
[k: string]: unknown | undefined
|
|
10306
|
-
})[]
|
|
10307
|
-
}]
|
|
10308
|
-
// ----- react/forbid-elements -----
|
|
10309
|
-
type ReactForbidElements = []|[{
|
|
10310
|
-
forbid?: (string | {
|
|
10311
|
-
element: string
|
|
10312
|
-
message?: string
|
|
10313
|
-
})[]
|
|
10314
|
-
}]
|
|
10315
|
-
// ----- react/forbid-foreign-prop-types -----
|
|
10316
|
-
type ReactForbidForeignPropTypes = []|[{
|
|
10317
|
-
allowInPropTypes?: boolean
|
|
10318
|
-
}]
|
|
10319
|
-
// ----- react/forbid-prop-types -----
|
|
10320
|
-
type ReactForbidPropTypes = []|[{
|
|
10321
|
-
forbid?: string[]
|
|
10322
|
-
checkContextTypes?: boolean
|
|
10323
|
-
checkChildContextTypes?: boolean
|
|
10324
|
-
[k: string]: unknown | undefined
|
|
10325
|
-
}]
|
|
10326
|
-
// ----- react/function-component-definition -----
|
|
10327
|
-
type ReactFunctionComponentDefinition = []|[{
|
|
10328
|
-
namedComponents?: (("function-declaration" | "arrow-function" | "function-expression") | ("function-declaration" | "arrow-function" | "function-expression")[])
|
|
10329
|
-
unnamedComponents?: (("arrow-function" | "function-expression") | ("arrow-function" | "function-expression")[])
|
|
10330
|
-
[k: string]: unknown | undefined
|
|
10331
|
-
}]
|
|
10332
|
-
// ----- react/hook-use-state -----
|
|
10333
|
-
type ReactHookUseState = []|[{
|
|
10334
|
-
allowDestructuredState?: boolean
|
|
10335
|
-
}]
|
|
10336
|
-
// ----- react/jsx-boolean-value -----
|
|
10337
|
-
type ReactJsxBooleanValue = ([]|[("always" | "never")] | []|["always"]|["always", {
|
|
10338
|
-
never?: string[]
|
|
10339
|
-
assumeUndefinedIsFalse?: boolean
|
|
10340
|
-
}] | []|["never"]|["never", {
|
|
10341
|
-
always?: string[]
|
|
10342
|
-
assumeUndefinedIsFalse?: boolean
|
|
10343
|
-
}])
|
|
10344
|
-
// ----- react/jsx-closing-bracket-location -----
|
|
10345
|
-
type ReactJsxClosingBracketLocation = []|[(("after-props" | "props-aligned" | "tag-aligned" | "line-aligned") | {
|
|
10346
|
-
location?: ("after-props" | "props-aligned" | "tag-aligned" | "line-aligned")
|
|
10347
|
-
} | {
|
|
10348
|
-
nonEmpty?: ("after-props" | "props-aligned" | "tag-aligned" | "line-aligned" | false)
|
|
10349
|
-
selfClosing?: ("after-props" | "props-aligned" | "tag-aligned" | "line-aligned" | false)
|
|
10039
|
+
// ----- react-naming-convention/component-name -----
|
|
10040
|
+
type ReactNamingConventionComponentName = []|[(("PascalCase" | "CONSTANT_CASE") | {
|
|
10041
|
+
excepts?: string[]
|
|
10042
|
+
rule?: ("PascalCase" | "CONSTANT_CASE")
|
|
10350
10043
|
})]
|
|
10351
|
-
// ----- react
|
|
10352
|
-
type
|
|
10353
|
-
|
|
10354
|
-
|
|
10355
|
-
|
|
10356
|
-
} | ("always" | "never" | "ignore"))]
|
|
10357
|
-
// ----- react/jsx-curly-newline -----
|
|
10358
|
-
type ReactJsxCurlyNewline = []|[(("consistent" | "never") | {
|
|
10359
|
-
singleline?: ("consistent" | "require" | "forbid")
|
|
10360
|
-
multiline?: ("consistent" | "require" | "forbid")
|
|
10044
|
+
// ----- react-naming-convention/filename -----
|
|
10045
|
+
type ReactNamingConventionFilename = []|[(("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
|
|
10046
|
+
excepts?: string[]
|
|
10047
|
+
extensions?: string[]
|
|
10048
|
+
rule?: ("PascalCase" | "camelCase" | "kebab-case" | "snake_case")
|
|
10361
10049
|
})]
|
|
10362
|
-
// ----- react/
|
|
10363
|
-
type
|
|
10364
|
-
attributes?: _ReactJsxCurlySpacingBasicConfigOrBoolean
|
|
10365
|
-
children?: _ReactJsxCurlySpacingBasicConfigOrBoolean
|
|
10366
|
-
[k: string]: unknown | undefined
|
|
10367
|
-
}) | ("always" | "never"))]|[((_ReactJsxCurlySpacing_BasicConfig & {
|
|
10368
|
-
attributes?: _ReactJsxCurlySpacingBasicConfigOrBoolean
|
|
10369
|
-
children?: _ReactJsxCurlySpacingBasicConfigOrBoolean
|
|
10370
|
-
[k: string]: unknown | undefined
|
|
10371
|
-
}) | ("always" | "never")), {
|
|
10372
|
-
allowMultiline?: boolean
|
|
10373
|
-
spacing?: {
|
|
10374
|
-
objectLiterals?: ("always" | "never")
|
|
10375
|
-
[k: string]: unknown | undefined
|
|
10376
|
-
}
|
|
10377
|
-
}]
|
|
10378
|
-
type _ReactJsxCurlySpacingBasicConfigOrBoolean = (_ReactJsxCurlySpacing_BasicConfig | boolean)
|
|
10379
|
-
interface _ReactJsxCurlySpacing_BasicConfig {
|
|
10380
|
-
when?: ("always" | "never")
|
|
10381
|
-
allowMultiline?: boolean
|
|
10382
|
-
spacing?: {
|
|
10383
|
-
objectLiterals?: ("always" | "never")
|
|
10384
|
-
[k: string]: unknown | undefined
|
|
10385
|
-
}
|
|
10386
|
-
[k: string]: unknown | undefined
|
|
10387
|
-
}
|
|
10388
|
-
// ----- react/jsx-equals-spacing -----
|
|
10389
|
-
type ReactJsxEqualsSpacing = []|[("always" | "never")]
|
|
10390
|
-
// ----- react/jsx-filename-extension -----
|
|
10391
|
-
type ReactJsxFilenameExtension = []|[{
|
|
10050
|
+
// ----- react-naming-convention/filename-extension -----
|
|
10051
|
+
type ReactNamingConventionFilenameExtension = []|[(("always" | "as-needed") | {
|
|
10392
10052
|
allow?: ("always" | "as-needed")
|
|
10393
10053
|
extensions?: string[]
|
|
10394
|
-
ignoreFilesWithoutCode?: boolean
|
|
10395
|
-
}]
|
|
10396
|
-
// ----- react/jsx-first-prop-new-line -----
|
|
10397
|
-
type ReactJsxFirstPropNewLine = []|[("always" | "never" | "multiline" | "multiline-multiprop" | "multiprop")]
|
|
10398
|
-
// ----- react/jsx-fragments -----
|
|
10399
|
-
type ReactJsxFragments = []|[("syntax" | "element")]
|
|
10400
|
-
// ----- react/jsx-handler-names -----
|
|
10401
|
-
type ReactJsxHandlerNames = []|[({
|
|
10402
|
-
eventHandlerPrefix?: string
|
|
10403
|
-
eventHandlerPropPrefix?: string
|
|
10404
|
-
checkLocalVariables?: boolean
|
|
10405
|
-
checkInlineFunction?: boolean
|
|
10406
|
-
} | {
|
|
10407
|
-
eventHandlerPrefix?: string
|
|
10408
|
-
eventHandlerPropPrefix?: false
|
|
10409
|
-
checkLocalVariables?: boolean
|
|
10410
|
-
checkInlineFunction?: boolean
|
|
10411
|
-
} | {
|
|
10412
|
-
eventHandlerPrefix?: false
|
|
10413
|
-
eventHandlerPropPrefix?: string
|
|
10414
|
-
checkLocalVariables?: boolean
|
|
10415
|
-
checkInlineFunction?: boolean
|
|
10416
|
-
} | {
|
|
10417
|
-
checkLocalVariables?: boolean
|
|
10418
|
-
} | {
|
|
10419
|
-
checkInlineFunction?: boolean
|
|
10420
|
-
})]
|
|
10421
|
-
// ----- react/jsx-indent -----
|
|
10422
|
-
type ReactJsxIndent = []|[("tab" | number)]|[("tab" | number), {
|
|
10423
|
-
checkAttributes?: boolean
|
|
10424
|
-
indentLogicalExpressions?: boolean
|
|
10425
|
-
}]
|
|
10426
|
-
// ----- react/jsx-indent-props -----
|
|
10427
|
-
type ReactJsxIndentProps = []|[(("tab" | "first") | number | {
|
|
10428
|
-
indentMode?: (("tab" | "first") | number)
|
|
10429
|
-
ignoreTernaryOperator?: boolean
|
|
10430
|
-
[k: string]: unknown | undefined
|
|
10431
|
-
})]
|
|
10432
|
-
// ----- react/jsx-key -----
|
|
10433
|
-
type ReactJsxKey = []|[{
|
|
10434
|
-
checkFragmentShorthand?: boolean
|
|
10435
|
-
checkKeyMustBeforeSpread?: boolean
|
|
10436
|
-
warnOnDuplicates?: boolean
|
|
10437
|
-
}]
|
|
10438
|
-
// ----- react/jsx-max-depth -----
|
|
10439
|
-
type ReactJsxMaxDepth = []|[{
|
|
10440
|
-
max?: number
|
|
10441
|
-
}]
|
|
10442
|
-
// ----- react/jsx-max-props-per-line -----
|
|
10443
|
-
type ReactJsxMaxPropsPerLine = []|[({
|
|
10444
|
-
maximum?: {
|
|
10445
|
-
single?: number
|
|
10446
|
-
multi?: number
|
|
10447
|
-
[k: string]: unknown | undefined
|
|
10448
|
-
}
|
|
10449
|
-
} | {
|
|
10450
|
-
maximum?: number
|
|
10451
|
-
when?: ("always" | "multiline")
|
|
10452
|
-
})]
|
|
10453
|
-
// ----- react/jsx-newline -----
|
|
10454
|
-
type ReactJsxNewline = []|[{
|
|
10455
|
-
prevent?: boolean
|
|
10456
|
-
allowMultilines?: boolean
|
|
10457
|
-
}]
|
|
10458
|
-
// ----- react/jsx-no-bind -----
|
|
10459
|
-
type ReactJsxNoBind = []|[{
|
|
10460
|
-
allowArrowFunctions?: boolean
|
|
10461
|
-
allowBind?: boolean
|
|
10462
|
-
allowFunctions?: boolean
|
|
10463
|
-
ignoreRefs?: boolean
|
|
10464
|
-
ignoreDOMComponents?: boolean
|
|
10465
|
-
}]
|
|
10466
|
-
// ----- react/jsx-no-constructed-context-values -----
|
|
10467
|
-
interface ReactJsxNoConstructedContextValues {
|
|
10468
|
-
[k: string]: unknown | undefined
|
|
10469
|
-
}
|
|
10470
|
-
// ----- react/jsx-no-duplicate-props -----
|
|
10471
|
-
type ReactJsxNoDuplicateProps = []|[{
|
|
10472
|
-
ignoreCase?: boolean
|
|
10473
|
-
}]
|
|
10474
|
-
// ----- react/jsx-no-leaked-render -----
|
|
10475
|
-
type ReactJsxNoLeakedRender = []|[{
|
|
10476
|
-
validStrategies?: ("ternary" | "coerce")[]
|
|
10477
|
-
}]
|
|
10478
|
-
// ----- react/jsx-no-literals -----
|
|
10479
|
-
type ReactJsxNoLiterals = []|[{
|
|
10480
|
-
noStrings?: boolean
|
|
10481
|
-
allowedStrings?: string[]
|
|
10482
|
-
ignoreProps?: boolean
|
|
10483
|
-
noAttributeStrings?: boolean
|
|
10484
|
-
}]
|
|
10485
|
-
// ----- react/jsx-no-script-url -----
|
|
10486
|
-
type ReactJsxNoScriptUrl = ([]|[{
|
|
10487
|
-
name: string
|
|
10488
|
-
props: string[]
|
|
10489
|
-
}[]]|[{
|
|
10490
|
-
name: string
|
|
10491
|
-
props: string[]
|
|
10492
|
-
}[], {
|
|
10493
|
-
includeFromSettings?: boolean
|
|
10494
|
-
[k: string]: unknown | undefined
|
|
10495
|
-
}] | []|[{
|
|
10496
|
-
includeFromSettings?: boolean
|
|
10497
|
-
[k: string]: unknown | undefined
|
|
10498
|
-
}])
|
|
10499
|
-
// ----- react/jsx-no-target-blank -----
|
|
10500
|
-
type ReactJsxNoTargetBlank = []|[{
|
|
10501
|
-
allowReferrer?: boolean
|
|
10502
|
-
enforceDynamicLinks?: ("always" | "never")
|
|
10503
|
-
warnOnSpreadAttributes?: boolean
|
|
10504
|
-
links?: boolean
|
|
10505
|
-
forms?: boolean
|
|
10506
|
-
}]
|
|
10507
|
-
// ----- react/jsx-no-undef -----
|
|
10508
|
-
type ReactJsxNoUndef = []|[{
|
|
10509
|
-
allowGlobals?: boolean
|
|
10510
|
-
}]
|
|
10511
|
-
// ----- react/jsx-no-useless-fragment -----
|
|
10512
|
-
type ReactJsxNoUselessFragment = []|[{
|
|
10513
|
-
allowExpressions?: boolean
|
|
10514
|
-
[k: string]: unknown | undefined
|
|
10515
|
-
}]
|
|
10516
|
-
// ----- react/jsx-one-expression-per-line -----
|
|
10517
|
-
type ReactJsxOneExpressionPerLine = []|[{
|
|
10518
|
-
allow?: ("none" | "literal" | "single-child" | "non-jsx")
|
|
10519
|
-
}]
|
|
10520
|
-
// ----- react/jsx-pascal-case -----
|
|
10521
|
-
type ReactJsxPascalCase = []|[{
|
|
10522
|
-
allowAllCaps?: boolean
|
|
10523
|
-
allowLeadingUnderscore?: boolean
|
|
10524
|
-
allowNamespace?: boolean
|
|
10525
|
-
|
|
10526
|
-
ignore?: []|[string]
|
|
10527
|
-
}]
|
|
10528
|
-
// ----- react/jsx-props-no-spreading -----
|
|
10529
|
-
type ReactJsxPropsNoSpreading = []|[({
|
|
10530
|
-
html?: ("enforce" | "ignore")
|
|
10531
|
-
custom?: ("enforce" | "ignore")
|
|
10532
|
-
exceptions?: string[]
|
|
10533
|
-
[k: string]: unknown | undefined
|
|
10534
|
-
} & {
|
|
10535
|
-
[k: string]: unknown | undefined
|
|
10536
10054
|
})]
|
|
10537
|
-
// ----- react/
|
|
10538
|
-
type
|
|
10539
|
-
|
|
10540
|
-
|
|
10541
|
-
|
|
10542
|
-
type ReactJsxSortProps = []|[{
|
|
10543
|
-
callbacksLast?: boolean
|
|
10544
|
-
shorthandFirst?: boolean
|
|
10545
|
-
shorthandLast?: boolean
|
|
10546
|
-
multiline?: ("ignore" | "first" | "last")
|
|
10547
|
-
ignoreCase?: boolean
|
|
10548
|
-
noSortAlphabetically?: boolean
|
|
10549
|
-
reservedFirst?: (unknown[] | boolean)
|
|
10550
|
-
locale?: string
|
|
10551
|
-
}]
|
|
10552
|
-
// ----- react/jsx-space-before-closing -----
|
|
10553
|
-
type ReactJsxSpaceBeforeClosing = []|[("always" | "never")]
|
|
10554
|
-
// ----- react/jsx-tag-spacing -----
|
|
10555
|
-
type ReactJsxTagSpacing = []|[{
|
|
10556
|
-
closingSlash?: ("always" | "never" | "allow")
|
|
10557
|
-
beforeSelfClosing?: ("always" | "proportional-always" | "never" | "allow")
|
|
10558
|
-
afterOpening?: ("always" | "allow-multiline" | "never" | "allow")
|
|
10559
|
-
beforeClosing?: ("always" | "proportional-always" | "never" | "allow")
|
|
10560
|
-
}]
|
|
10561
|
-
// ----- react/jsx-wrap-multilines -----
|
|
10562
|
-
type ReactJsxWrapMultilines = []|[{
|
|
10563
|
-
declaration?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10564
|
-
assignment?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10565
|
-
return?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10566
|
-
arrow?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10567
|
-
condition?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10568
|
-
logical?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10569
|
-
prop?: (true | false | "ignore" | "parens" | "parens-new-line" | "never")
|
|
10570
|
-
}]
|
|
10571
|
-
// ----- react/no-children-prop -----
|
|
10572
|
-
type ReactNoChildrenProp = []|[{
|
|
10573
|
-
allowFunctions?: boolean
|
|
10574
|
-
}]
|
|
10575
|
-
// ----- react/no-did-mount-set-state -----
|
|
10576
|
-
type ReactNoDidMountSetState = []|["disallow-in-func"]
|
|
10577
|
-
// ----- react/no-did-update-set-state -----
|
|
10578
|
-
type ReactNoDidUpdateSetState = []|["disallow-in-func"]
|
|
10579
|
-
// ----- react/no-invalid-html-attribute -----
|
|
10580
|
-
type ReactNoInvalidHtmlAttribute = []|[("rel")[]]
|
|
10581
|
-
// ----- react/no-multi-comp -----
|
|
10582
|
-
type ReactNoMultiComp = []|[{
|
|
10583
|
-
ignoreStateless?: boolean
|
|
10584
|
-
}]
|
|
10585
|
-
// ----- react/no-string-refs -----
|
|
10586
|
-
type ReactNoStringRefs = []|[{
|
|
10587
|
-
noTemplateLiterals?: boolean
|
|
10588
|
-
}]
|
|
10589
|
-
// ----- react/no-unescaped-entities -----
|
|
10590
|
-
type ReactNoUnescapedEntities = []|[{
|
|
10591
|
-
forbid?: (string | {
|
|
10592
|
-
char?: string
|
|
10593
|
-
alternatives?: string[]
|
|
10594
|
-
[k: string]: unknown | undefined
|
|
10595
|
-
})[]
|
|
10596
|
-
}]
|
|
10597
|
-
// ----- react/no-unknown-property -----
|
|
10598
|
-
type ReactNoUnknownProperty = []|[{
|
|
10599
|
-
ignore?: string[]
|
|
10600
|
-
requireDataLowercase?: boolean
|
|
10601
|
-
}]
|
|
10602
|
-
// ----- react/no-unsafe -----
|
|
10603
|
-
type ReactNoUnsafe = []|[{
|
|
10604
|
-
checkAliases?: boolean
|
|
10605
|
-
}]
|
|
10606
|
-
// ----- react/no-unstable-nested-components -----
|
|
10607
|
-
type ReactNoUnstableNestedComponents = []|[{
|
|
10608
|
-
customValidators?: string[]
|
|
10609
|
-
allowAsProps?: boolean
|
|
10610
|
-
}]
|
|
10611
|
-
// ----- react/no-unused-prop-types -----
|
|
10612
|
-
type ReactNoUnusedPropTypes = []|[{
|
|
10613
|
-
ignore?: string[]
|
|
10614
|
-
customValidators?: string[]
|
|
10615
|
-
skipShapeProps?: boolean
|
|
10616
|
-
}]
|
|
10617
|
-
// ----- react/no-will-update-set-state -----
|
|
10618
|
-
type ReactNoWillUpdateSetState = []|["disallow-in-func"]
|
|
10619
|
-
// ----- react/prefer-es6-class -----
|
|
10620
|
-
type ReactPreferEs6Class = []|[("always" | "never")]
|
|
10621
|
-
// ----- react/prefer-stateless-function -----
|
|
10622
|
-
type ReactPreferStatelessFunction = []|[{
|
|
10623
|
-
ignorePureComponents?: boolean
|
|
10624
|
-
}]
|
|
10625
|
-
// ----- react/prop-types -----
|
|
10626
|
-
type ReactPropTypes = []|[{
|
|
10627
|
-
ignore?: string[]
|
|
10628
|
-
customValidators?: string[]
|
|
10629
|
-
skipUndeclared?: boolean
|
|
10630
|
-
}]
|
|
10631
|
-
// ----- react/require-default-props -----
|
|
10632
|
-
type ReactRequireDefaultProps = []|[{
|
|
10633
|
-
forbidDefaultForRequired?: boolean
|
|
10634
|
-
classes?: ("defaultProps" | "ignore")
|
|
10635
|
-
functions?: ("defaultArguments" | "defaultProps" | "ignore")
|
|
10636
|
-
ignoreFunctionalComponents?: boolean
|
|
10637
|
-
}]
|
|
10638
|
-
// ----- react/require-optimization -----
|
|
10639
|
-
type ReactRequireOptimization = []|[{
|
|
10640
|
-
allowDecorators?: string[]
|
|
10641
|
-
}]
|
|
10642
|
-
// ----- react/self-closing-comp -----
|
|
10643
|
-
type ReactSelfClosingComp = []|[{
|
|
10644
|
-
component?: boolean
|
|
10645
|
-
html?: boolean
|
|
10646
|
-
}]
|
|
10647
|
-
// ----- react/sort-comp -----
|
|
10648
|
-
type ReactSortComp = []|[{
|
|
10649
|
-
order?: string[]
|
|
10650
|
-
groups?: {
|
|
10651
|
-
[k: string]: string[]
|
|
10652
|
-
}
|
|
10653
|
-
}]
|
|
10654
|
-
// ----- react/sort-default-props -----
|
|
10655
|
-
type ReactSortDefaultProps = []|[{
|
|
10656
|
-
ignoreCase?: boolean
|
|
10657
|
-
}]
|
|
10658
|
-
// ----- react/sort-prop-types -----
|
|
10659
|
-
type ReactSortPropTypes = []|[{
|
|
10660
|
-
requiredFirst?: boolean
|
|
10661
|
-
callbacksLast?: boolean
|
|
10662
|
-
ignoreCase?: boolean
|
|
10663
|
-
noSortAlphabetically?: boolean
|
|
10664
|
-
sortShapeProp?: boolean
|
|
10665
|
-
checkTypes?: boolean
|
|
10666
|
-
}]
|
|
10667
|
-
// ----- react/state-in-constructor -----
|
|
10668
|
-
type ReactStateInConstructor = []|[("always" | "never")]
|
|
10669
|
-
// ----- react/static-property-placement -----
|
|
10670
|
-
type ReactStaticPropertyPlacement = []|[("static public field" | "static getter" | "property assignment")]|[("static public field" | "static getter" | "property assignment"), {
|
|
10671
|
-
propTypes?: ("static public field" | "static getter" | "property assignment")
|
|
10672
|
-
defaultProps?: ("static public field" | "static getter" | "property assignment")
|
|
10673
|
-
childContextTypes?: ("static public field" | "static getter" | "property assignment")
|
|
10674
|
-
contextTypes?: ("static public field" | "static getter" | "property assignment")
|
|
10675
|
-
contextType?: ("static public field" | "static getter" | "property assignment")
|
|
10676
|
-
displayName?: ("static public field" | "static getter" | "property assignment")
|
|
10677
|
-
}]
|
|
10678
|
-
// ----- react/style-prop-object -----
|
|
10679
|
-
type ReactStylePropObject = []|[{
|
|
10680
|
-
allow?: string[]
|
|
10681
|
-
[k: string]: unknown | undefined
|
|
10055
|
+
// ----- react-refresh/only-export-components -----
|
|
10056
|
+
type ReactRefreshOnlyExportComponents = []|[{
|
|
10057
|
+
allowConstantExport?: boolean
|
|
10058
|
+
checkJS?: boolean
|
|
10059
|
+
allowExportNames?: string[]
|
|
10682
10060
|
}]
|
|
10683
10061
|
// ----- require-atomic-updates -----
|
|
10684
10062
|
type RequireAtomicUpdates = []|[{
|
|
@@ -14608,7 +13986,7 @@ type VueNoConsole = []|[{
|
|
|
14608
13986
|
}]
|
|
14609
13987
|
// ----- vue/no-constant-condition -----
|
|
14610
13988
|
type VueNoConstantCondition = []|[{
|
|
14611
|
-
checkLoops?:
|
|
13989
|
+
checkLoops?: ("all" | "allExceptWhileTrue" | "none" | true | false)
|
|
14612
13990
|
}]
|
|
14613
13991
|
// ----- vue/no-deprecated-model-definition -----
|
|
14614
13992
|
type VueNoDeprecatedModelDefinition = []|[{
|
|
@@ -15515,7 +14893,7 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
15515
14893
|
* Enable react rules.
|
|
15516
14894
|
*
|
|
15517
14895
|
* Requires installing:
|
|
15518
|
-
* -
|
|
14896
|
+
* - `@eslint-react/eslint-plugin`
|
|
15519
14897
|
* - `eslint-plugin-react-hooks`
|
|
15520
14898
|
* - `eslint-plugin-react-refresh`
|
|
15521
14899
|
*
|
|
@@ -15592,6 +14970,10 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
15592
14970
|
}
|
|
15593
14971
|
|
|
15594
14972
|
declare const defaultPluginRenaming: {
|
|
14973
|
+
"@eslint-react": string;
|
|
14974
|
+
"@eslint-react/dom": string;
|
|
14975
|
+
"@eslint-react/hooks-extra": string;
|
|
14976
|
+
"@eslint-react/naming-convention": string;
|
|
15595
14977
|
"@stylistic": string;
|
|
15596
14978
|
"@typescript-eslint": string;
|
|
15597
14979
|
"import-x": string;
|
|
@@ -15614,8 +14996,14 @@ type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
|
|
|
15614
14996
|
declare function resolveSubOptions<K extends keyof OptionsConfig>(options: OptionsConfig, key: K): ResolvedOptions<OptionsConfig[K]>;
|
|
15615
14997
|
declare function getOverrides<K extends keyof OptionsConfig>(options: OptionsConfig, key: K): any;
|
|
15616
14998
|
|
|
14999
|
+
declare function astro(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
15000
|
+
|
|
15001
|
+
declare function command(): Promise<TypedFlatConfigItem[]>;
|
|
15002
|
+
|
|
15617
15003
|
declare function comments(): Promise<TypedFlatConfigItem[]>;
|
|
15618
15004
|
|
|
15005
|
+
declare function formatters(options?: OptionsFormatters | true, stylistic?: StylisticConfig): Promise<TypedFlatConfigItem[]>;
|
|
15006
|
+
|
|
15619
15007
|
declare function ignores(): Promise<TypedFlatConfigItem[]>;
|
|
15620
15008
|
|
|
15621
15009
|
declare function imports(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
|
|
@@ -15637,9 +15025,9 @@ declare function node(): Promise<TypedFlatConfigItem[]>;
|
|
|
15637
15025
|
*/
|
|
15638
15026
|
declare function perfectionist(): Promise<TypedFlatConfigItem[]>;
|
|
15639
15027
|
|
|
15640
|
-
declare function
|
|
15028
|
+
declare function react(options?: OptionsTypeScriptWithTypes & OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
15641
15029
|
|
|
15642
|
-
declare function
|
|
15030
|
+
declare function solid(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles & OptionsTypeScriptWithTypes): Promise<TypedFlatConfigItem[]>;
|
|
15643
15031
|
|
|
15644
15032
|
/**
|
|
15645
15033
|
* Sort package.json
|
|
@@ -15664,6 +15052,8 @@ declare function svelte(options?: OptionsHasTypeScript & OptionsOverrides & Opti
|
|
|
15664
15052
|
|
|
15665
15053
|
declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
15666
15054
|
|
|
15055
|
+
declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
15056
|
+
|
|
15667
15057
|
declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions): Promise<TypedFlatConfigItem[]>;
|
|
15668
15058
|
|
|
15669
15059
|
declare function unicorn(): Promise<TypedFlatConfigItem[]>;
|
|
@@ -15674,12 +15064,6 @@ declare function vue(options?: OptionsVue & OptionsHasTypeScript & OptionsOverri
|
|
|
15674
15064
|
|
|
15675
15065
|
declare function yaml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
15676
15066
|
|
|
15677
|
-
declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
15678
|
-
|
|
15679
|
-
declare function astro(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
15680
|
-
|
|
15681
|
-
declare function solid(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles & OptionsTypeScriptWithTypes): Promise<TypedFlatConfigItem[]>;
|
|
15682
|
-
|
|
15683
15067
|
declare const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
|
|
15684
15068
|
declare const GLOB_SRC = "**/*.?([cm])[jt]s?(x)";
|
|
15685
15069
|
declare const GLOB_JS = "**/*.?([cm])js";
|
|
@@ -15779,4 +15163,4 @@ declare function interopDefault<T>(m: Awaitable<T>): Promise<T extends {
|
|
|
15779
15163
|
} ? U : T>;
|
|
15780
15164
|
declare function ensurePackages(packages: (string | undefined)[]): Promise<void>;
|
|
15781
15165
|
|
|
15782
|
-
export { type Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_YAML, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsFormatters, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsOverrides, type OptionsStylistic, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnoCSS, type OptionsVue, type ResolvedOptions, type Rules, type StylisticConfig, StylisticConfigDefaults, type StylisticOptions, type TypedFlatConfigItem, astro, combine, comments, kirklin as default, defaultPluginRenaming, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, javascript, jsdoc, jsonc, kirklin, markdown, node, parserPlain, perfectionist, react, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
|
|
15166
|
+
export { type Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_YAML, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsFormatters, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsOverrides, type OptionsStylistic, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnoCSS, type OptionsVue, type ResolvedOptions, type Rules, type StylisticConfig, StylisticConfigDefaults, type StylisticOptions, type TypedFlatConfigItem, astro, combine, command, comments, kirklin as default, defaultPluginRenaming, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, javascript, jsdoc, jsonc, kirklin, markdown, node, parserPlain, perfectionist, react, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
|