github.com/hernad/nomad@v1.6.112/ui/.eslintrc.js (about)

     1  /**
     2   * Copyright (c) HashiCorp, Inc.
     3   * SPDX-License-Identifier: MPL-2.0
     4   */
     5  
     6  'use strict';
     7  
     8  module.exports = {
     9    root: true,
    10    parser: 'babel-eslint',
    11    parserOptions: {
    12      ecmaVersion: 2018,
    13      sourceType: 'module',
    14      ecmaFeatures: {
    15        legacyDecorators: true,
    16      },
    17    },
    18    globals: {
    19      server: true,
    20    },
    21    env: {
    22      browser: true,
    23    },
    24    plugins: ['ember'],
    25    extends: [
    26      'eslint:recommended',
    27      'plugin:ember/recommended',
    28      'plugin:prettier/recommended',
    29    ],
    30    rules: {
    31      'ember/classic-decorator-hooks': 'error',
    32      'ember/classic-decorator-no-classic-methods': 'error',
    33      'ember/no-get': 'off',
    34      'ember/no-mixins': 'off',
    35      'ember/no-classic-classes': 'off',
    36      'ember/no-computed-properties-in-native-classes': 'off',
    37      'ember/no-classic-components': 'off',
    38      'ember/no-component-lifecycle-hooks': 'off',
    39      'ember/require-tagless-components': 'off',
    40    },
    41    overrides: [
    42      // node files
    43      {
    44        files: [
    45          './.eslintrc.js',
    46          './.prettierrc.js',
    47          './.template-lintrc.js',
    48          './ember-cli-build.js',
    49          './testem.js',
    50          './blueprints/*/index.js',
    51          './config/**/*.js',
    52          './lib/*/index.js',
    53          './server/**/*.js',
    54          './tests/.eslintrc.js',
    55        ],
    56        parserOptions: {
    57          sourceType: 'script',
    58        },
    59        env: {
    60          browser: false,
    61          node: true,
    62        },
    63        plugins: ['node'],
    64        extends: ['plugin:node/recommended'],
    65        rules: {
    66          // this can be removed once the following is fixed
    67          // https://github.com/mysticatea/eslint-plugin-node/issues/77
    68          'node/no-unpublished-require': 'off',
    69        },
    70      },
    71      {
    72        files: ['stories/**/*.js'],
    73        parserOptions: {
    74          sourceType: 'module',
    75        },
    76        env: {
    77          browser: false,
    78          node: true,
    79        },
    80        plugins: ['node'],
    81      },
    82      {
    83        // Test files:
    84        files: ['tests/**/*-test.{js,ts}'],
    85        extends: ['plugin:qunit/recommended'],
    86      },
    87    ],
    88  };