Skip to content

Commit 606b752

Browse files
committed
feat: update to follow ember 3.15 and split ember in 3 configs
1 parent 0a248d3 commit 606b752

File tree

6 files changed

+556
-64
lines changed

6 files changed

+556
-64
lines changed

README.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,24 @@ Preset configurations are available for:
4646
extends: ['peopledoc']
4747
```
4848

49-
**Ember:**
49+
**Ember Application:**
5050

5151
```js
5252
extends: ['peopledoc/ember']
5353
```
5454

55+
**Ember Addon:**
56+
57+
```js
58+
extends: ['peopledoc/ember-addon']
59+
```
60+
61+
**Ember Test:**
62+
63+
```js
64+
extends: ['peopledoc/ember-test']
65+
```
66+
5567
**ES5 only**
5668

5769
```js
@@ -66,7 +78,7 @@ extends: ['peopledoc/prettier']
6678

6779
### Formatting Code
6880

69-
We recommand to use prettier-eslint in order to format it with `prettier` ([why?](https://prettier.io/docs/en/why-prettier.html)) then fix issue with `eslint --fix`:
81+
We recommend to use prettier-eslint in order to format it with `prettier` ([why?](https://prettier.io/docs/en/why-prettier.html)) then fix issue with `eslint --fix`:
7082

7183
```shell
7284
./node_modules/.bin/prettier-eslint --list-different --single-quote {app,config,mirage,server,tests}/{**/,}*.js
@@ -78,7 +90,7 @@ Once you have review change you can write them with
7890
./node_modules/.bin/prettier-eslint --write --single-quote {app,config,mirage,server,tests}/{**/,}*.js
7991
```
8092

81-
:bulb: We recomment to add a custom `format` script to your _package.json_ so you can run `npm format`.
93+
:bulb: We recommend to add a custom `format` script to your _package.json_ so you can run `npm format`.
8294

8395
## License
8496

ember-addon.js

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
module.exports = {
2+
env: {
3+
browser: true
4+
},
5+
parser: "babel-eslint",
6+
parserOptions: {
7+
ecmaVersion: 2018,
8+
sourceType: "module",
9+
ecmaFeatures: {
10+
legacyDecorators: true
11+
}
12+
},
13+
plugins: ["ember", "ember-suave"],
14+
extends: [
15+
"eslint:recommended",
16+
"plugin:ember-suave/recommended",
17+
"./core.js"
18+
],
19+
rules: {
20+
"ember/no-jquery": "warn",
21+
"ember-suave/require-access-in-comments": "off"
22+
},
23+
overrides: [
24+
// node files
25+
{
26+
files: [
27+
".eslintrc.js",
28+
".template-lintrc.js",
29+
"ember-cli-build.js",
30+
"index.js",
31+
"testem.js",
32+
"blueprints/*/index.js",
33+
"config/**/*.js",
34+
"tests/dummy/config/**/*.js"
35+
],
36+
excludedFiles: [
37+
"addon/**",
38+
"addon-test-support/**",
39+
"app/**",
40+
"tests/dummy/app/**"
41+
],
42+
parserOptions: {
43+
sourceType: "script"
44+
},
45+
env: {
46+
browser: false,
47+
node: true
48+
},
49+
plugins: ["node"],
50+
rules: Object.assign(
51+
{},
52+
require("eslint-plugin-node").configs.recommended.rules,
53+
{
54+
// this can be removed once the following is fixed
55+
// https://github.com/mysticatea/eslint-plugin-node/issues/77
56+
"node/no-unpublished-require": "off"
57+
}
58+
)
59+
},
60+
// testem config file
61+
{
62+
files: ["testem.js"],
63+
rules: {
64+
camelcase: "off"
65+
}
66+
}
67+
]
68+
}

ember-test.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
module.exports = {
2+
globals: {
3+
server: true // mirage
4+
},
5+
env: {
6+
embertest: true
7+
},
8+
parserOptions: {
9+
ecmaVersion: 2018,
10+
sourceType: "module"
11+
},
12+
extends: ["./core.js"]
13+
}

ember.js

Lines changed: 14 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
module.exports = {
22
env: {
3-
browser: true,
4-
embertest: true
5-
},
6-
globals: {
7-
server: true, // mirage
8-
withFeature: true // feature flag
3+
browser: true
94
},
105
parser: "babel-eslint",
116
parserOptions: {
@@ -15,39 +10,27 @@ module.exports = {
1510
legacyDecorators: true
1611
}
1712
},
18-
plugins: ["ember"],
13+
plugins: ["ember", "ember-suave"],
1914
extends: [
2015
"eslint:recommended",
21-
"plugin:ember/recommended",
2216
"plugin:ember-suave/recommended",
2317
"./core.js"
2418
],
19+
rules: {
20+
"ember/no-jquery": "warn",
21+
"ember-suave/require-access-in-comments": "off"
22+
},
2523
overrides: [
26-
{
27-
files: ["testem.js"],
28-
rules: {
29-
camelcase: 0
30-
}
31-
},
3224
// node files
3325
{
3426
files: [
3527
".eslintrc.js",
3628
".template-lintrc.js",
3729
"ember-cli-build.js",
38-
"index.js",
3930
"testem.js",
40-
"blueprints/*/index.js",
4131
"config/**/*.js",
4232
"lib/*/index.js",
43-
"server/**/*.js",
44-
"tests/dummy/config/**/*.js"
45-
],
46-
excludedFiles: [
47-
"addon/**",
48-
"addon-test-support/**",
49-
"app/**",
50-
"tests/dummy/app/**"
33+
"server/**/*.js"
5134
],
5235
parserOptions: {
5336
sourceType: "script"
@@ -61,13 +44,18 @@ module.exports = {
6144
{},
6245
require("eslint-plugin-node").configs.recommended.rules,
6346
{
64-
// add your custom rules and overrides for node files here
65-
6647
// this can be removed once the following is fixed
6748
// https://github.com/mysticatea/eslint-plugin-node/issues/77
6849
"node/no-unpublished-require": "off"
6950
}
7051
)
52+
},
53+
// testem config file
54+
{
55+
files: ["testem.js"],
56+
rules: {
57+
camelcase: "off"
58+
}
7159
}
7260
]
7361
}

package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@
44
"version": "1.7.2",
55
"main": "index.js",
66
"dependencies": {
7-
"eslint": "5.x.x",
8-
"eslint-plugin-ember": "6.x.x",
9-
"eslint-plugin-ember-suave": "1.x.x",
7+
"eslint-plugin-ember": "7.x.x",
8+
"eslint-plugin-ember-suave": "2.x.x",
109
"eslint-plugin-es5": "1.x.x",
11-
"eslint-plugin-node": "9.x.x",
10+
"eslint-plugin-node": "10.x.x",
1211
"eslint-plugin-prettier": "3.x.x",
13-
"prettier": "1.x.x",
1412
"prettier-eslint-cli": "5.x.x"
1513
},
1614
"files": [
1715
"core.js",
16+
"ember-addon.js",
17+
"ember-test.js",
1818
"ember.js",
1919
"es5.js",
2020
"index.js",

0 commit comments

Comments
 (0)