@storm-software/eslint 0.75.0 → 0.76.1
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 +1 -1
- package/dist/preset.d.mts +0 -213
- package/dist/preset.d.ts +0 -213
- package/dist/preset.mjs +44 -928
- package/dist/rules.d.ts +0 -428
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -21,7 +21,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
|
|
|
21
21
|
|
|
22
22
|
<h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
|
|
23
23
|
|
|
24
|
-
[](https://prettier.io/) [](http://nx.dev/) [](https://nextjs.org/) [](http://commitizen.github.io/cz-cli/)  [](https://fumadocs.vercel.app/) 
|
|
25
25
|
|
|
26
26
|
<!-- prettier-ignore-start -->
|
|
27
27
|
<!-- markdownlint-disable -->
|
package/dist/preset.d.mts
CHANGED
|
@@ -789,218 +789,10 @@ interface RuleOptions {
|
|
|
789
789
|
* @see https://docs.stormsoftware.com/eslint/rules/banner
|
|
790
790
|
*/
|
|
791
791
|
'banner/banner'?: Linter.RuleEntry<BannerBanner>
|
|
792
|
-
/**
|
|
793
|
-
* Enforce emojis are wrapped in `<span>` and provide screenreader access.
|
|
794
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md
|
|
795
|
-
* @deprecated
|
|
796
|
-
*/
|
|
797
|
-
'jsx-a11y/accessible-emoji'?: Linter.RuleEntry<JsxA11yAccessibleEmoji>
|
|
798
|
-
/**
|
|
799
|
-
* Enforce all elements that require alternative text have meaningful information to relay back to end user.
|
|
800
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md
|
|
801
|
-
*/
|
|
802
|
-
'jsx-a11y/alt-text'?: Linter.RuleEntry<JsxA11yAltText>
|
|
803
|
-
/**
|
|
804
|
-
* Enforce `<a>` text to not exactly match "click here", "here", "link", or "a link".
|
|
805
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md
|
|
806
|
-
*/
|
|
807
|
-
'jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<JsxA11yAnchorAmbiguousText>
|
|
808
|
-
/**
|
|
809
|
-
* Enforce all anchors to contain accessible content.
|
|
810
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md
|
|
811
|
-
*/
|
|
812
|
-
'jsx-a11y/anchor-has-content'?: Linter.RuleEntry<JsxA11yAnchorHasContent>
|
|
813
|
-
/**
|
|
814
|
-
* Enforce all anchors are valid, navigable elements.
|
|
815
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md
|
|
816
|
-
*/
|
|
817
|
-
'jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<JsxA11yAnchorIsValid>
|
|
818
|
-
/**
|
|
819
|
-
* Enforce elements with aria-activedescendant are tabbable.
|
|
820
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
|
|
821
|
-
*/
|
|
822
|
-
'jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<JsxA11yAriaActivedescendantHasTabindex>
|
|
823
|
-
/**
|
|
824
|
-
* Enforce all `aria-*` props are valid.
|
|
825
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md
|
|
826
|
-
*/
|
|
827
|
-
'jsx-a11y/aria-props'?: Linter.RuleEntry<JsxA11yAriaProps>
|
|
828
|
-
/**
|
|
829
|
-
* Enforce ARIA state and property values are valid.
|
|
830
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md
|
|
831
|
-
*/
|
|
832
|
-
'jsx-a11y/aria-proptypes'?: Linter.RuleEntry<JsxA11yAriaProptypes>
|
|
833
|
-
/**
|
|
834
|
-
* Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
|
|
835
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md
|
|
836
|
-
*/
|
|
837
|
-
'jsx-a11y/aria-role'?: Linter.RuleEntry<JsxA11yAriaRole>
|
|
838
|
-
/**
|
|
839
|
-
* Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes.
|
|
840
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md
|
|
841
|
-
*/
|
|
842
|
-
'jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<JsxA11yAriaUnsupportedElements>
|
|
843
|
-
/**
|
|
844
|
-
* Enforce that autocomplete attributes are used correctly.
|
|
845
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md
|
|
846
|
-
*/
|
|
847
|
-
'jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<JsxA11yAutocompleteValid>
|
|
848
|
-
/**
|
|
849
|
-
* Enforce a clickable non-interactive element has at least one keyboard event listener.
|
|
850
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md
|
|
851
|
-
*/
|
|
852
|
-
'jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<JsxA11yClickEventsHaveKeyEvents>
|
|
853
|
-
/**
|
|
854
|
-
* Enforce that a control (an interactive element) has a text label.
|
|
855
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
|
|
856
|
-
*/
|
|
857
|
-
'jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<JsxA11yControlHasAssociatedLabel>
|
|
858
|
-
/**
|
|
859
|
-
* Enforce heading (`h1`, `h2`, etc) elements contain accessible content.
|
|
860
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md
|
|
861
|
-
*/
|
|
862
|
-
'jsx-a11y/heading-has-content'?: Linter.RuleEntry<JsxA11yHeadingHasContent>
|
|
863
|
-
/**
|
|
864
|
-
* Enforce `<html>` element has `lang` prop.
|
|
865
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md
|
|
866
|
-
*/
|
|
867
|
-
'jsx-a11y/html-has-lang'?: Linter.RuleEntry<JsxA11yHtmlHasLang>
|
|
868
|
-
/**
|
|
869
|
-
* Enforce iframe elements have a title attribute.
|
|
870
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md
|
|
871
|
-
*/
|
|
872
|
-
'jsx-a11y/iframe-has-title'?: Linter.RuleEntry<JsxA11yIframeHasTitle>
|
|
873
|
-
/**
|
|
874
|
-
* Enforce `<img>` alt prop does not contain the word "image", "picture", or "photo".
|
|
875
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md
|
|
876
|
-
*/
|
|
877
|
-
'jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<JsxA11yImgRedundantAlt>
|
|
878
|
-
/**
|
|
879
|
-
* Enforce that elements with interactive handlers like `onClick` must be focusable.
|
|
880
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md
|
|
881
|
-
*/
|
|
882
|
-
'jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<JsxA11yInteractiveSupportsFocus>
|
|
883
|
-
/**
|
|
884
|
-
* Enforce that a `label` tag has a text label and an associated control.
|
|
885
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
|
|
886
|
-
*/
|
|
887
|
-
'jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<JsxA11yLabelHasAssociatedControl>
|
|
888
|
-
/**
|
|
889
|
-
* Enforce that `<label>` elements have the `htmlFor` prop.
|
|
890
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/label-has-for.md
|
|
891
|
-
* @deprecated
|
|
892
|
-
*/
|
|
893
|
-
'jsx-a11y/label-has-for'?: Linter.RuleEntry<JsxA11yLabelHasFor>
|
|
894
|
-
/**
|
|
895
|
-
* Enforce lang attribute has a valid value.
|
|
896
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md
|
|
897
|
-
*/
|
|
898
|
-
'jsx-a11y/lang'?: Linter.RuleEntry<JsxA11yLang>
|
|
899
|
-
/**
|
|
900
|
-
* Enforces that `<audio>` and `<video>` elements must have a `<track>` for captions.
|
|
901
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md
|
|
902
|
-
*/
|
|
903
|
-
'jsx-a11y/media-has-caption'?: Linter.RuleEntry<JsxA11yMediaHasCaption>
|
|
904
|
-
/**
|
|
905
|
-
* Enforce that `onMouseOver`/`onMouseOut` are accompanied by `onFocus`/`onBlur` for keyboard-only users.
|
|
906
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md
|
|
907
|
-
*/
|
|
908
|
-
'jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<JsxA11yMouseEventsHaveKeyEvents>
|
|
909
|
-
/**
|
|
910
|
-
* Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screenreader.
|
|
911
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md
|
|
912
|
-
*/
|
|
913
|
-
'jsx-a11y/no-access-key'?: Linter.RuleEntry<JsxA11yNoAccessKey>
|
|
914
|
-
/**
|
|
915
|
-
* Disallow `aria-hidden="true"` from being set on focusable elements.
|
|
916
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
|
|
917
|
-
*/
|
|
918
|
-
'jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<JsxA11yNoAriaHiddenOnFocusable>
|
|
919
|
-
/**
|
|
920
|
-
* Enforce autoFocus prop is not used.
|
|
921
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md
|
|
922
|
-
*/
|
|
923
|
-
'jsx-a11y/no-autofocus'?: Linter.RuleEntry<JsxA11yNoAutofocus>
|
|
924
|
-
/**
|
|
925
|
-
* Enforce distracting elements are not used.
|
|
926
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md
|
|
927
|
-
*/
|
|
928
|
-
'jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<JsxA11yNoDistractingElements>
|
|
929
|
-
/**
|
|
930
|
-
* Interactive elements should not be assigned non-interactive roles.
|
|
931
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
|
|
932
|
-
*/
|
|
933
|
-
'jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<JsxA11yNoInteractiveElementToNoninteractiveRole>
|
|
934
|
-
/**
|
|
935
|
-
* Non-interactive elements should not be assigned mouse or keyboard event listeners.
|
|
936
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
|
|
937
|
-
*/
|
|
938
|
-
'jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<JsxA11yNoNoninteractiveElementInteractions>
|
|
939
|
-
/**
|
|
940
|
-
* Non-interactive elements should not be assigned interactive roles.
|
|
941
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
|
|
942
|
-
*/
|
|
943
|
-
'jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<JsxA11yNoNoninteractiveElementToInteractiveRole>
|
|
944
|
-
/**
|
|
945
|
-
* `tabIndex` should only be declared on interactive elements.
|
|
946
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
|
|
947
|
-
*/
|
|
948
|
-
'jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<JsxA11yNoNoninteractiveTabindex>
|
|
949
|
-
/**
|
|
950
|
-
* Enforce usage of `onBlur` over `onChange` on select menus for accessibility.
|
|
951
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md
|
|
952
|
-
* @deprecated
|
|
953
|
-
*/
|
|
954
|
-
'jsx-a11y/no-onchange'?: Linter.RuleEntry<JsxA11yNoOnchange>
|
|
955
|
-
/**
|
|
956
|
-
* Enforce explicit role property is not the same as implicit/default role property on element.
|
|
957
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md
|
|
958
|
-
*/
|
|
959
|
-
'jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<JsxA11yNoRedundantRoles>
|
|
960
|
-
/**
|
|
961
|
-
* Enforce that non-interactive, visible elements (such as `<div>`) that have click handlers use the role attribute.
|
|
962
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md
|
|
963
|
-
*/
|
|
964
|
-
'jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<JsxA11yNoStaticElementInteractions>
|
|
965
|
-
/**
|
|
966
|
-
* Enforces using semantic DOM elements over the ARIA `role` property.
|
|
967
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/prefer-tag-over-role.md
|
|
968
|
-
*/
|
|
969
|
-
'jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<JsxA11yPreferTagOverRole>
|
|
970
|
-
/**
|
|
971
|
-
* Enforce that elements with ARIA roles must have all required attributes for that role.
|
|
972
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md
|
|
973
|
-
*/
|
|
974
|
-
'jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<JsxA11yRoleHasRequiredAriaProps>
|
|
975
|
-
/**
|
|
976
|
-
* Enforce that elements with explicit or implicit roles defined contain only `aria-*` properties supported by that `role`.
|
|
977
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md
|
|
978
|
-
*/
|
|
979
|
-
'jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<JsxA11yRoleSupportsAriaProps>
|
|
980
|
-
/**
|
|
981
|
-
* Enforce `scope` prop is only used on `<th>` elements.
|
|
982
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md
|
|
983
|
-
*/
|
|
984
|
-
'jsx-a11y/scope'?: Linter.RuleEntry<JsxA11yScope>
|
|
985
|
-
/**
|
|
986
|
-
* Enforce `tabIndex` value is not greater than zero.
|
|
987
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md
|
|
988
|
-
*/
|
|
989
|
-
'jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<JsxA11yTabindexNoPositive>
|
|
990
792
|
/**
|
|
991
793
|
* @see https://github.com/prettier/eslint-plugin-prettier#options
|
|
992
794
|
*/
|
|
993
795
|
'prettier/prettier'?: Linter.RuleEntry<PrettierPrettier>
|
|
994
|
-
/**
|
|
995
|
-
* verifies the list of dependencies for Hooks like useEffect and similar
|
|
996
|
-
* @see https://github.com/facebook/react/issues/14920
|
|
997
|
-
*/
|
|
998
|
-
'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>
|
|
999
|
-
/**
|
|
1000
|
-
* enforces the Rules of Hooks
|
|
1001
|
-
* @see https://reactjs.org/docs/hooks-rules.html
|
|
1002
|
-
*/
|
|
1003
|
-
'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>
|
|
1004
796
|
/**
|
|
1005
797
|
* Enforces consistent naming for boolean props
|
|
1006
798
|
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/boolean-prop-naming.md
|
|
@@ -3974,11 +3766,6 @@ type PrettierPrettier = []|[{
|
|
|
3974
3766
|
}
|
|
3975
3767
|
[k: string]: unknown | undefined
|
|
3976
3768
|
}]
|
|
3977
|
-
// ----- react-hooks/exhaustive-deps -----
|
|
3978
|
-
type ReactHooksExhaustiveDeps = []|[{
|
|
3979
|
-
additionalHooks?: string
|
|
3980
|
-
enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean
|
|
3981
|
-
}]
|
|
3982
3769
|
// ----- react/boolean-prop-naming -----
|
|
3983
3770
|
type ReactBooleanPropNaming = []|[{
|
|
3984
3771
|
|
package/dist/preset.d.ts
CHANGED
|
@@ -789,218 +789,10 @@ interface RuleOptions {
|
|
|
789
789
|
* @see https://docs.stormsoftware.com/eslint/rules/banner
|
|
790
790
|
*/
|
|
791
791
|
'banner/banner'?: Linter.RuleEntry<BannerBanner>
|
|
792
|
-
/**
|
|
793
|
-
* Enforce emojis are wrapped in `<span>` and provide screenreader access.
|
|
794
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md
|
|
795
|
-
* @deprecated
|
|
796
|
-
*/
|
|
797
|
-
'jsx-a11y/accessible-emoji'?: Linter.RuleEntry<JsxA11yAccessibleEmoji>
|
|
798
|
-
/**
|
|
799
|
-
* Enforce all elements that require alternative text have meaningful information to relay back to end user.
|
|
800
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md
|
|
801
|
-
*/
|
|
802
|
-
'jsx-a11y/alt-text'?: Linter.RuleEntry<JsxA11yAltText>
|
|
803
|
-
/**
|
|
804
|
-
* Enforce `<a>` text to not exactly match "click here", "here", "link", or "a link".
|
|
805
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md
|
|
806
|
-
*/
|
|
807
|
-
'jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<JsxA11yAnchorAmbiguousText>
|
|
808
|
-
/**
|
|
809
|
-
* Enforce all anchors to contain accessible content.
|
|
810
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md
|
|
811
|
-
*/
|
|
812
|
-
'jsx-a11y/anchor-has-content'?: Linter.RuleEntry<JsxA11yAnchorHasContent>
|
|
813
|
-
/**
|
|
814
|
-
* Enforce all anchors are valid, navigable elements.
|
|
815
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md
|
|
816
|
-
*/
|
|
817
|
-
'jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<JsxA11yAnchorIsValid>
|
|
818
|
-
/**
|
|
819
|
-
* Enforce elements with aria-activedescendant are tabbable.
|
|
820
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
|
|
821
|
-
*/
|
|
822
|
-
'jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<JsxA11yAriaActivedescendantHasTabindex>
|
|
823
|
-
/**
|
|
824
|
-
* Enforce all `aria-*` props are valid.
|
|
825
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md
|
|
826
|
-
*/
|
|
827
|
-
'jsx-a11y/aria-props'?: Linter.RuleEntry<JsxA11yAriaProps>
|
|
828
|
-
/**
|
|
829
|
-
* Enforce ARIA state and property values are valid.
|
|
830
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md
|
|
831
|
-
*/
|
|
832
|
-
'jsx-a11y/aria-proptypes'?: Linter.RuleEntry<JsxA11yAriaProptypes>
|
|
833
|
-
/**
|
|
834
|
-
* Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
|
|
835
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md
|
|
836
|
-
*/
|
|
837
|
-
'jsx-a11y/aria-role'?: Linter.RuleEntry<JsxA11yAriaRole>
|
|
838
|
-
/**
|
|
839
|
-
* Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes.
|
|
840
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md
|
|
841
|
-
*/
|
|
842
|
-
'jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<JsxA11yAriaUnsupportedElements>
|
|
843
|
-
/**
|
|
844
|
-
* Enforce that autocomplete attributes are used correctly.
|
|
845
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md
|
|
846
|
-
*/
|
|
847
|
-
'jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<JsxA11yAutocompleteValid>
|
|
848
|
-
/**
|
|
849
|
-
* Enforce a clickable non-interactive element has at least one keyboard event listener.
|
|
850
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md
|
|
851
|
-
*/
|
|
852
|
-
'jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<JsxA11yClickEventsHaveKeyEvents>
|
|
853
|
-
/**
|
|
854
|
-
* Enforce that a control (an interactive element) has a text label.
|
|
855
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
|
|
856
|
-
*/
|
|
857
|
-
'jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<JsxA11yControlHasAssociatedLabel>
|
|
858
|
-
/**
|
|
859
|
-
* Enforce heading (`h1`, `h2`, etc) elements contain accessible content.
|
|
860
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md
|
|
861
|
-
*/
|
|
862
|
-
'jsx-a11y/heading-has-content'?: Linter.RuleEntry<JsxA11yHeadingHasContent>
|
|
863
|
-
/**
|
|
864
|
-
* Enforce `<html>` element has `lang` prop.
|
|
865
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md
|
|
866
|
-
*/
|
|
867
|
-
'jsx-a11y/html-has-lang'?: Linter.RuleEntry<JsxA11yHtmlHasLang>
|
|
868
|
-
/**
|
|
869
|
-
* Enforce iframe elements have a title attribute.
|
|
870
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md
|
|
871
|
-
*/
|
|
872
|
-
'jsx-a11y/iframe-has-title'?: Linter.RuleEntry<JsxA11yIframeHasTitle>
|
|
873
|
-
/**
|
|
874
|
-
* Enforce `<img>` alt prop does not contain the word "image", "picture", or "photo".
|
|
875
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md
|
|
876
|
-
*/
|
|
877
|
-
'jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<JsxA11yImgRedundantAlt>
|
|
878
|
-
/**
|
|
879
|
-
* Enforce that elements with interactive handlers like `onClick` must be focusable.
|
|
880
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md
|
|
881
|
-
*/
|
|
882
|
-
'jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<JsxA11yInteractiveSupportsFocus>
|
|
883
|
-
/**
|
|
884
|
-
* Enforce that a `label` tag has a text label and an associated control.
|
|
885
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
|
|
886
|
-
*/
|
|
887
|
-
'jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<JsxA11yLabelHasAssociatedControl>
|
|
888
|
-
/**
|
|
889
|
-
* Enforce that `<label>` elements have the `htmlFor` prop.
|
|
890
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/label-has-for.md
|
|
891
|
-
* @deprecated
|
|
892
|
-
*/
|
|
893
|
-
'jsx-a11y/label-has-for'?: Linter.RuleEntry<JsxA11yLabelHasFor>
|
|
894
|
-
/**
|
|
895
|
-
* Enforce lang attribute has a valid value.
|
|
896
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md
|
|
897
|
-
*/
|
|
898
|
-
'jsx-a11y/lang'?: Linter.RuleEntry<JsxA11yLang>
|
|
899
|
-
/**
|
|
900
|
-
* Enforces that `<audio>` and `<video>` elements must have a `<track>` for captions.
|
|
901
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md
|
|
902
|
-
*/
|
|
903
|
-
'jsx-a11y/media-has-caption'?: Linter.RuleEntry<JsxA11yMediaHasCaption>
|
|
904
|
-
/**
|
|
905
|
-
* Enforce that `onMouseOver`/`onMouseOut` are accompanied by `onFocus`/`onBlur` for keyboard-only users.
|
|
906
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md
|
|
907
|
-
*/
|
|
908
|
-
'jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<JsxA11yMouseEventsHaveKeyEvents>
|
|
909
|
-
/**
|
|
910
|
-
* Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screenreader.
|
|
911
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md
|
|
912
|
-
*/
|
|
913
|
-
'jsx-a11y/no-access-key'?: Linter.RuleEntry<JsxA11yNoAccessKey>
|
|
914
|
-
/**
|
|
915
|
-
* Disallow `aria-hidden="true"` from being set on focusable elements.
|
|
916
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
|
|
917
|
-
*/
|
|
918
|
-
'jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<JsxA11yNoAriaHiddenOnFocusable>
|
|
919
|
-
/**
|
|
920
|
-
* Enforce autoFocus prop is not used.
|
|
921
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md
|
|
922
|
-
*/
|
|
923
|
-
'jsx-a11y/no-autofocus'?: Linter.RuleEntry<JsxA11yNoAutofocus>
|
|
924
|
-
/**
|
|
925
|
-
* Enforce distracting elements are not used.
|
|
926
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md
|
|
927
|
-
*/
|
|
928
|
-
'jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<JsxA11yNoDistractingElements>
|
|
929
|
-
/**
|
|
930
|
-
* Interactive elements should not be assigned non-interactive roles.
|
|
931
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
|
|
932
|
-
*/
|
|
933
|
-
'jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<JsxA11yNoInteractiveElementToNoninteractiveRole>
|
|
934
|
-
/**
|
|
935
|
-
* Non-interactive elements should not be assigned mouse or keyboard event listeners.
|
|
936
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
|
|
937
|
-
*/
|
|
938
|
-
'jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<JsxA11yNoNoninteractiveElementInteractions>
|
|
939
|
-
/**
|
|
940
|
-
* Non-interactive elements should not be assigned interactive roles.
|
|
941
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
|
|
942
|
-
*/
|
|
943
|
-
'jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<JsxA11yNoNoninteractiveElementToInteractiveRole>
|
|
944
|
-
/**
|
|
945
|
-
* `tabIndex` should only be declared on interactive elements.
|
|
946
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
|
|
947
|
-
*/
|
|
948
|
-
'jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<JsxA11yNoNoninteractiveTabindex>
|
|
949
|
-
/**
|
|
950
|
-
* Enforce usage of `onBlur` over `onChange` on select menus for accessibility.
|
|
951
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md
|
|
952
|
-
* @deprecated
|
|
953
|
-
*/
|
|
954
|
-
'jsx-a11y/no-onchange'?: Linter.RuleEntry<JsxA11yNoOnchange>
|
|
955
|
-
/**
|
|
956
|
-
* Enforce explicit role property is not the same as implicit/default role property on element.
|
|
957
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md
|
|
958
|
-
*/
|
|
959
|
-
'jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<JsxA11yNoRedundantRoles>
|
|
960
|
-
/**
|
|
961
|
-
* Enforce that non-interactive, visible elements (such as `<div>`) that have click handlers use the role attribute.
|
|
962
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md
|
|
963
|
-
*/
|
|
964
|
-
'jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<JsxA11yNoStaticElementInteractions>
|
|
965
|
-
/**
|
|
966
|
-
* Enforces using semantic DOM elements over the ARIA `role` property.
|
|
967
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/prefer-tag-over-role.md
|
|
968
|
-
*/
|
|
969
|
-
'jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<JsxA11yPreferTagOverRole>
|
|
970
|
-
/**
|
|
971
|
-
* Enforce that elements with ARIA roles must have all required attributes for that role.
|
|
972
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md
|
|
973
|
-
*/
|
|
974
|
-
'jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<JsxA11yRoleHasRequiredAriaProps>
|
|
975
|
-
/**
|
|
976
|
-
* Enforce that elements with explicit or implicit roles defined contain only `aria-*` properties supported by that `role`.
|
|
977
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md
|
|
978
|
-
*/
|
|
979
|
-
'jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<JsxA11yRoleSupportsAriaProps>
|
|
980
|
-
/**
|
|
981
|
-
* Enforce `scope` prop is only used on `<th>` elements.
|
|
982
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md
|
|
983
|
-
*/
|
|
984
|
-
'jsx-a11y/scope'?: Linter.RuleEntry<JsxA11yScope>
|
|
985
|
-
/**
|
|
986
|
-
* Enforce `tabIndex` value is not greater than zero.
|
|
987
|
-
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md
|
|
988
|
-
*/
|
|
989
|
-
'jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<JsxA11yTabindexNoPositive>
|
|
990
792
|
/**
|
|
991
793
|
* @see https://github.com/prettier/eslint-plugin-prettier#options
|
|
992
794
|
*/
|
|
993
795
|
'prettier/prettier'?: Linter.RuleEntry<PrettierPrettier>
|
|
994
|
-
/**
|
|
995
|
-
* verifies the list of dependencies for Hooks like useEffect and similar
|
|
996
|
-
* @see https://github.com/facebook/react/issues/14920
|
|
997
|
-
*/
|
|
998
|
-
'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>
|
|
999
|
-
/**
|
|
1000
|
-
* enforces the Rules of Hooks
|
|
1001
|
-
* @see https://reactjs.org/docs/hooks-rules.html
|
|
1002
|
-
*/
|
|
1003
|
-
'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>
|
|
1004
796
|
/**
|
|
1005
797
|
* Enforces consistent naming for boolean props
|
|
1006
798
|
* @see https://github.com/jsx-eslint/eslint-plugin-react/tree/master/docs/rules/boolean-prop-naming.md
|
|
@@ -3974,11 +3766,6 @@ type PrettierPrettier = []|[{
|
|
|
3974
3766
|
}
|
|
3975
3767
|
[k: string]: unknown | undefined
|
|
3976
3768
|
}]
|
|
3977
|
-
// ----- react-hooks/exhaustive-deps -----
|
|
3978
|
-
type ReactHooksExhaustiveDeps = []|[{
|
|
3979
|
-
additionalHooks?: string
|
|
3980
|
-
enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean
|
|
3981
|
-
}]
|
|
3982
3769
|
// ----- react/boolean-prop-naming -----
|
|
3983
3770
|
type ReactBooleanPropNaming = []|[{
|
|
3984
3771
|
|