xref: /aosp_15_r20/external/pigweed/.eslintrc.cjs (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1// Copyright 2024 The Pigweed Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License"); you may not
4// use this file except in compliance with the License. You may obtain a copy of
5// the License at
6//
7//     https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12// License for the specific language governing permissions and limitations under
13// the License.
14
15// ESLint configuration
16module.exports = {
17  env: {
18    browser: true,
19    es2021: true,
20    mocha: true,
21    jest: true,
22  },
23  root: true,
24  extends: [
25    "eslint:recommended",
26    "plugin:@typescript-eslint/recommended",
27    "plugin:lit-a11y/recommended",
28  ],
29  overrides: [],
30  parserOptions: {
31    ecmaVersion: "latest",
32    sourceType: "module",
33  },
34  plugins: [
35    "@typescript-eslint",
36    "lit-a11y",
37  ],
38  rules: {
39    "@typescript-eslint/ban-ts-comment": "warn",
40    "@typescript-eslint/no-explicit-any": "warn",
41    "@typescript-eslint/no-unused-vars": "warn",
42  },
43  ignorePatterns: [
44    "**/next.config.js",
45    "bazel-bin",
46    "bazel-out",
47    "bazel-pigweed",
48    "bazel-testlogs",
49    "node-modules",
50    "pw_ide/ts/pigweed-vscode/webpack.config.js",
51    "pw_web/log-viewer/src/assets/**",
52    "pw_web/log-viewer/src/legacy/**/*",
53    "pw_web/log-viewer/src/models/**",
54  ],
55};
56