Skip to content

Commit e42d472

Browse files
Merge pull request #1944 from patricklx/gts/gjs-configs
gts/gjs configs
2 parents fd6fc2d + d74a07e commit e42d472

File tree

12 files changed

+167
-58
lines changed

12 files changed

+167
-58
lines changed

.eslintignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
coverage/
22
node_modules
33
lib/recommended-rules.js
4+
lib/recommended-rules-gjs.js
5+
lib/recommended-rules-gts.js
46

57
# Contains <template> in js markdown
6-
docs/rules/no-empty-glimmer-component-classes.md
8+
docs/rules/no-empty-glimmer-component-classes.md

README.md

Lines changed: 41 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,42 @@ learn more [here](https://github.com/ember-template-imports/ember-template-impor
5353
module.exports = {
5454
overrides: [
5555
{
56-
files: ['**/*.gts', '**/*.gjs'],
56+
files: ['**/*.{js,ts,gjs,gts}'],
57+
plugins: ['ember'],
58+
extends: [
59+
'eslint:recommended',
60+
'plugin:ember/gts-recommended', // or other configuration
61+
],
62+
rules: {
63+
// override / enable optional rules
64+
'ember/no-replace-test-comments': 'error'
65+
}
66+
},
67+
{
68+
files: ['**/*.gts'],
69+
parser: 'eslint-plugin-ember/gjs-gts-parser',
70+
plugins: ['ember'],
71+
extends: [
72+
'eslint:recommended',
73+
'plugin:ember/gts-recommended', // or other configuration
74+
],
75+
},
76+
{
77+
files: ['**/*.gjs'],
5778
parser: 'eslint-plugin-ember/gjs-gts-parser',
58-
}
79+
plugins: ['ember'],
80+
extends: [
81+
'eslint:recommended',
82+
'plugin:ember/gjs-recommended', // or other configuration
83+
],
84+
},
85+
{
86+
files: ['tests/**/*.{js,ts,gjs,gts}'],
87+
rules: {
88+
// override / enable optional rules
89+
'ember/no-replace-test-comments': 'error'
90+
}
91+
},
5992
],
6093
};
6194
```
@@ -107,9 +140,12 @@ html does not have the distinction of line or block comments, which is why block
107140

108141
<!-- begin auto-generated configs list -->
109142

110-
| | Name |
111-
| :- | :------------ |
112-
|| `recommended` |
143+
| | Name |
144+
| :- | :---------------- |
145+
| | `base` |
146+
|| `recommended` |
147+
| | `recommended-gjs` |
148+
| | `recommended-gts` |
113149

114150
<!-- end auto-generated configs list -->
115151

docs/svgs/gjs.svg

Lines changed: 16 additions & 0 deletions
Loading

docs/svgs/gts.svg

Lines changed: 16 additions & 0 deletions
Loading

lib/config/base.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
module.exports = {
2+
root: true,
3+
4+
parserOptions: {
5+
ecmaVersion: 2020,
6+
sourceType: 'module',
7+
},
8+
9+
env: {
10+
browser: true,
11+
es2020: true,
12+
},
13+
14+
plugins: ['ember'],
15+
16+
overrides: [
17+
/**
18+
* We don't want to *always* have the preprocessor active,
19+
* it's only relevant on gjs and gts files to detect if eslint config is correctly setup for this files.
20+
*/
21+
{
22+
files: ['**/*.{gts,gjs}'],
23+
parser: 'eslint-plugin-ember/gjs-gts-parser',
24+
processor: 'ember/<noop>',
25+
},
26+
],
27+
};

lib/config/recommended-gjs.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
const base = require('./base');
2+
const gjsRules = require('../recommended-rules-gjs');
3+
4+
module.exports = {
5+
...base,
6+
rules: gjsRules,
7+
};

lib/config/recommended-gts.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
const base = require('./base');
2+
const gtsRules = require('../recommended-rules-gts');
3+
4+
module.exports = {
5+
...base,
6+
rules: gtsRules,
7+
};

lib/config/recommended.js

Lines changed: 2 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,7 @@
1+
const base = require('./base');
12
const rules = require('../recommended-rules');
23

34
module.exports = {
4-
root: true,
5-
6-
parserOptions: {
7-
ecmaVersion: 2020,
8-
sourceType: 'module',
9-
},
10-
11-
env: {
12-
browser: true,
13-
es2020: true,
14-
},
15-
16-
plugins: ['ember'],
17-
5+
...base,
186
rules,
19-
20-
overrides: [
21-
/**
22-
* We don't want to *always* have the preprocessor active,
23-
* it's only relevant on gjs and gts files.
24-
*
25-
* Additionally, we need to declare a global (which is private API)
26-
* so that ESLint doesn't report errors about the variable being undefined.
27-
* While this is true, it's a temporary thing for babel to do further processing
28-
* on -- and isn't relevant to user-land code.
29-
*/
30-
{
31-
files: ['**/*.gts', '**/*.gjs'],
32-
parser: 'eslint-plugin-ember/gjs-gts-parser',
33-
processor: 'ember/<noop>',
34-
},
35-
],
367
};

lib/recommended-rules-gjs.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/*
2+
* IMPORTANT!
3+
* This file has been automatically generated.
4+
* In order to update its content based on rules'
5+
* definitions, execute "npm run update"
6+
*/
7+
module.exports = {}

lib/recommended-rules-gts.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/*
2+
* IMPORTANT!
3+
* This file has been automatically generated.
4+
* In order to update its content based on rules'
5+
* definitions, execute "npm run update"
6+
*/
7+
module.exports = {}

0 commit comments

Comments
 (0)