/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ 'use strict'; module.exports = { root: true, parser: '@babel/eslint-parser', parserOptions: { ecmaVersion: 2018, sourceType: 'module', // This is specific babel-config. If grows consider creating a babel config file requireConfigFile: false, babelOptions: { plugins: [['@babel/plugin-proposal-decorators', { legacy: true }]], }, // end of babel-config }, plugins: ['ember'], extends: ['eslint:recommended', 'plugin:ember/recommended', 'prettier'], env: { browser: true, }, rules: { 'ember/no-get': 'off', 'ember/no-get-with-default': 'off', 'ember/no-computed-properties-in-native-classes': 'off', 'ember/no-assignment-of-untracked-properties-used-in-tracking-contexts': 'off', }, overrides: [ // node files { files: [ './.eslintrc.js', './.prettierrc.js', './.template-lintrc.js', './ember-cli-build.js', './index.js', './testem.js', './blueprints/*/index.js', './config/**/*.js', './tests/dummy/config/**/*.js', ], parserOptions: { sourceType: 'script', }, env: { browser: false, node: true, }, plugins: ['node'], extends: ['plugin:node/recommended'], }, { // Test files: files: ['tests/**/*-test.{js,ts}'], extends: ['plugin:qunit/recommended'], }, ], };