marco/eslint.config.mjs
Tomster 2b5d392eb0
Initial Commit from Ember CLI v6.9.1
_...,
                                                     ,:^;,...;
              -+===;.         ,,--++====++-,,,     .:  /.....,
            :::::~+++++#:,+#++++++++++++++++++#*..:   /,......
           (,,,,,,::=+++##++++++++++++++++++++++#.   :....../
            ...,,,,,::++++++++++++++++++++++++++++++*..,...:
            *..+...,#@@@@@@@@@++++++++++++++++++++++#*....*
              @#,;##############@@@+*+#@@@@@@@@@@#*++#..<
              *@##@@+,-*^^^*-+@####@@@######@@@#####@@,,,+
                @#@*            @#@@@@#@@+--*^^*--#@@@@@@#
                @#@.    @#      @##+++@#,           .@@#@@
                 #@#    @@     +@@++++#@@     @@     :@@
                 :@#*         @#@++++++@#*    #@     @@+
                :*+@@#;,.__.+@#@+,-^^.++@#          @@++
               ;*  :*@@@##@@@@;++r._j^.+@##@+,.__,,@@++.
              /*    ........+++++++++++++#@@@@@###@@#++++,
            ,:       ...,@@@#++===----==@@@####,,....+++++
           .:       ......@@##@\   ;   :@####@,,...... +++.
           ;       .........@###,   ;  ;xx#@;,,.....   *;+,
           |       ........,*;xxxx--^--=xxx,........   :+#;
           ;         ......,,;xxxxxxxxxxxxx;,.....     *+#
            ;          ......,::xxxx;.     ......       +.   .
             *;            .........  +###  ....       / ,. /:| ,.
               .+:             ...  ;##++##, .      ,#. (..v..;*./
                  **                ##  ###*    .:*&&&+. \.,....<,
                   #&+**==-..,,__  ;##  ###  :,*+&&&&&&&v+#&,,.._/
                  #&&&&*...,::,,.  ##; ,##* .*****;:&&&&&&&&&
                 ,+*+;~*..*** *.* ### ###* *******    *+#&;*
                                  ##,;##    ****    :,  **
         #####    ##   ###  ###,  ########       .#####   ;##  ##
        #######  ;##  #### ,###.  ##########    ########  ### ####
       ###  ###  ### ##########   ####  ####   ,##   ###  #######*
      ### ,###  ##############:   ##     ###  #### ,##   :#### ###  ##;
  ##########    ########### ##   .##    ,###  #######    ##### :######
    ######    .###### ####  ##   ###    ### ######*    :#####   ####
       #############  ####  ################    ######## ###
        #####*  *#*    #:   :###   *###*         *####    #*
2026-01-13 19:10:05 +07:00

104 lines
2.1 KiB
JavaScript

/**
* Debugging:
* https://eslint.org/docs/latest/use/configure/debug
* ----------------------------------------------------
*
* Print a file's calculated configuration
*
* npx eslint --print-config path/to/file.js
*
* Inspecting the config
*
* npx eslint --inspect-config
*
*/
import globals from 'globals';
import js from '@eslint/js';
import { defineConfig, globalIgnores } from 'eslint/config';
import ember from 'eslint-plugin-ember/recommended';
import WarpDrive from 'eslint-plugin-warp-drive/recommended';
import eslintConfigPrettier from 'eslint-config-prettier';
import qunit from 'eslint-plugin-qunit';
import n from 'eslint-plugin-n';
import babelParser from '@babel/eslint-parser/experimental-worker';
const esmParserOptions = {
ecmaFeatures: { modules: true },
ecmaVersion: 'latest',
};
export default defineConfig([
globalIgnores(['dist/', 'coverage/', '!**/.*']),
js.configs.recommended,
eslintConfigPrettier,
ember.configs.base,
ember.configs.gjs,
...WarpDrive,
/**
* https://eslint.org/docs/latest/use/configure/configuration-files#configuring-linter-options
*/
{
linterOptions: {
reportUnusedDisableDirectives: 'error',
},
},
{
files: ['**/*.js'],
languageOptions: {
parser: babelParser,
},
},
{
files: ['**/*.{js,gjs}'],
languageOptions: {
parserOptions: esmParserOptions,
globals: {
...globals.browser,
},
},
},
{
files: ['tests/**/*-test.{js,gjs}'],
plugins: {
qunit,
},
},
/**
* CJS node files
*/
{
files: ['**/*.cjs', 'config/**/*.js', 'ember-cli-build.js'],
plugins: {
n,
},
languageOptions: {
sourceType: 'script',
ecmaVersion: 'latest',
globals: {
...globals.node,
},
},
},
/**
* ESM node files
*/
{
files: ['**/*.mjs'],
plugins: {
n,
},
languageOptions: {
sourceType: 'module',
ecmaVersion: 'latest',
parserOptions: esmParserOptions,
globals: {
...globals.node,
},
},
},
]);