diff options
| author | xuatz <xzlow10@gmail.com> | 2025-06-22 20:29:30 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-06-22 12:29:30 +0100 |
| commit | d5e2973dce617f451e4eb07491b3a6874ea6ca47 (patch) | |
| tree | 9e134ac8c0b263cec755068082ca61c9646efd21 /tooling/oxlint/oxlint-react.json | |
| parent | 91a9d3c1aee04d77b2a2d022821f4a7a38e315f3 (diff) | |
| download | karakeep-d5e2973dce617f451e4eb07491b3a6874ea6ca47.tar.zst | |
chore: migrate away from eslint to oxlint (#1642)
* chore: migrate away from eslint to oxlint
* revert turbo task name lint
* it seems like we can remove the seemingly default globals
Diffstat (limited to 'tooling/oxlint/oxlint-react.json')
| -rw-r--r-- | tooling/oxlint/oxlint-react.json | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/tooling/oxlint/oxlint-react.json b/tooling/oxlint/oxlint-react.json new file mode 100644 index 00000000..dd5c4c01 --- /dev/null +++ b/tooling/oxlint/oxlint-react.json @@ -0,0 +1,62 @@ +{ + "$schema": "../../node_modules/oxlint/configuration_schema.json", + "plugins": [ + "react", + "jsx-a11y" + ], + "rules": { + "react/prop-types": "off", + "react/jsx-key": "warn", + "react/jsx-no-comment-textnodes": "warn", + "react/jsx-no-duplicate-props": "warn", + "react/jsx-no-target-blank": "warn", + "react/jsx-no-undef": "warn", + "react/no-children-prop": "warn", + "react/no-danger-with-children": "warn", + "react/no-direct-mutation-state": "warn", + "react/no-find-dom-node": "warn", + "react/no-is-mounted": "warn", + "react/no-render-return-value": "warn", + "react/no-string-refs": "warn", + "react/no-unescaped-entities": "warn", + "react/no-unknown-property": "warn", + "react/react-in-jsx-scope": "off", + "react-hooks/rules-of-hooks": "error", + "react-hooks/exhaustive-deps": "off", + "jsx-a11y/alt-text": "error", + "jsx-a11y/anchor-ambiguous-text": "off", + "jsx-a11y/anchor-has-content": "error", + "jsx-a11y/anchor-is-valid": "error", + "jsx-a11y/aria-activedescendant-has-tabindex": "error", + "jsx-a11y/aria-props": "error", + "jsx-a11y/aria-role": "error", + "jsx-a11y/aria-unsupported-elements": "error", + "jsx-a11y/autocomplete-valid": "error", + "jsx-a11y/click-events-have-key-events": "error", + "jsx-a11y/heading-has-content": "error", + "jsx-a11y/html-has-lang": "error", + "jsx-a11y/iframe-has-title": "off", + "jsx-a11y/img-redundant-alt": "error", + "jsx-a11y/label-has-associated-control": "off", + "jsx-a11y/media-has-caption": "error", + "jsx-a11y/mouse-events-have-key-events": "error", + "jsx-a11y/no-access-key": "error", + "jsx-a11y/no-autofocus": "off", + "jsx-a11y/no-distracting-elements": "error", + "jsx-a11y/no-noninteractive-tabindex": [ + "error", + { + "tags": [], + "roles": [ + "tabpanel" + ], + "allowExpressionValues": true + } + ], + "jsx-a11y/no-redundant-roles": "error", + "jsx-a11y/role-has-required-aria-props": "warn", + "jsx-a11y/role-supports-aria-props": "error", + "jsx-a11y/scope": "error", + "jsx-a11y/tabindex-no-positive": "error" + } +} |
