{
  "root": true,
  "env": {
    "browser": true
  },
  "parserOptions": {
    "sourceType": "module"
  },
  "extends": ["airbnb", "prettier", "prettier/react"],
  "plugins": ["prettier"],
  "rules": {
    "max-len": 0,
    "no-plusplus": 0,
    "no-bitwise": 0,
    "no-unused-expressions": 0,
    "prettier/prettier": 2,
    "react/destructuring-assignment": [0, "always"],
    "react/prop-types": 0,
    "react/no-deprecated": 0,
    "import/no-extraneous-dependencies": [2, { "devDependencies": true }],
    "import/no-dynamic-require": 0
  },
  "globals": {
    "__NEBULA_DEV__": false
  },
  "overrides": [
    {
      "files": ["apis/**/*"],
      "rules": {
        "no-console": "error"
      }
    },
    {
      "files": ["apis/*/index.js"],
      "rules": {
        "global-require": 0
      }
    },
    {
      "files": ["commands/sense/src/*.js"],
      "rules": {
        "no-var": 0,
        "import/no-amd": 0
      },
      "globals": {
        "define": false
      }
    },
    {
      "files": ["**/*.{int,comp,spec}.{js,jsx}"],
      "env": {
        "browser": false,
        "node": true,
        "mocha": true
      },
      "globals": {
        "chai": false,
        "expect": false,
        "sinon": false,
        "aw": false,
        "page": false
      },
      "plugins": ["mocha"],
      "rules": {
        "mocha/no-exclusive-tests": "error"
      }
    },
    {
      "files": ["**/*.{int,comp}.js"],
      "env": {
        "browser": true
      }
    },
    {
      "files": ["**/templates/**/*.js"],
      "rules": {
        "import/no-unresolved": 0,
        "import/extensions": 0,
        "import/no-extraneous-dependencies": 0
      }
    },
    {
      "files": ["**/website/**/*.js"],
      "rules": {
        "react/jsx-filename-extension": 0,
        "react/no-multi-comp": 0,
        "react/prefer-stateless-function": 0,
        "import/no-extraneous-dependencies": 0,
        "import/no-unresolved": 0
      }
    }
  ]
}
