@soleil-se/eslint-config 0.1.7 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/README.md +74 -25
  2. package/client.js +22 -5
  3. package/package.json +1 -1
  4. package/vue.js +1 -0
package/README.md CHANGED
@@ -2,10 +2,10 @@
2
2
 
3
3
  ESLint configs anpassade för SiteVision som bygger på Airbnbs Javascript styleguide.
4
4
 
5
- **Klient**
5
+ **Klient & Server (ES2015+)**
6
6
  https://github.com/airbnb/javascript
7
7
 
8
- **Server**
8
+ **Server (ES5)**
9
9
  https://github.com/airbnb/javascript/tree/es5-deprecated/es5
10
10
 
11
11
  Om man stöter på ett fel man inte förstår kan man kolla i styleguiden eller söka på eslints hemsida.
@@ -40,19 +40,70 @@ https://eslint.org/docs/rules/
40
40
 
41
41
  ## 2. Installera
42
42
 
43
- Installera i ditt projekt genom att köra:
44
- `yarn add @soleil-se/eslint-config-sitevision --dev`
45
- eller
46
- `yarn add github:soleilit/eslint-config-sitevision --dev`
47
-
43
+ Installera konfigurationen och `eslint` i ditt projekt genom att köra:
44
+ `yarn add eslint @soleil-se/eslint-config-sitevision --dev`
48
45
 
49
46
  ## 3. Editors
50
47
  Lättaste sättet att komma igång med ESLint är att installera det som extension i din editor.
51
48
 
52
49
  ### 3.1. Skapa config
53
50
  Man behöver skapa upp `.eslintrc` filer i sitt projekt.
54
- [yeoman-generatorn](https://github.com/soleilit/sv_yeoman_generator) kan göra detta automatiskt med kommandot `yo soleil:eslint`
55
- Yeoman fungerar bara om man installerat via GitHub.
51
+ [yeoman-generatorn](https://github.com/soleilit/generator-sitevision) kan göra detta automatiskt med kommandot `yo @soleil-se/sitevision:eslint`
52
+
53
+ Ett projekt som kör @soleil-se/sv-gulp-build@^3.0.0
54
+ ```
55
+ <sitevision_projekt>
56
+ |
57
+ +---- client_src
58
+ | |
59
+ | +---- js
60
+ | |
61
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/client)
62
+ |
63
+ +---- server_src
64
+ |
65
+ +---- api
66
+ | |
67
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server-es6)
68
+ |
69
+ +---- restapps
70
+ | |
71
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server-es6)
72
+ |
73
+ +---- scripts
74
+ | |
75
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server-es6)
76
+ |
77
+ +---- snippets
78
+ | |
79
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server)
80
+ |
81
+ +---- webapps
82
+ |
83
+ +---- api
84
+ | |
85
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server-es6)
86
+ |
87
+ +---- apps
88
+ |
89
+ +---- App
90
+ |
91
+ +---- app_src
92
+ | |
93
+ | +---- client
94
+ | | |
95
+ | | +---- .eslintrc (@soleil-se/eslint-config-sitevision/client)
96
+ | |
97
+ | +---- server
98
+ | |
99
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server-es6)
100
+ |
101
+ +---- src
102
+ |
103
+ +---- .eslintrc (@soleil-se/eslint-config-sitevision/server)
104
+ ```
105
+
106
+ Ett projekt som kör @soleil-se/sv-gulp-build@^2.0.0
56
107
  ```
57
108
  <sitevision_projekt>
58
109
  |
@@ -60,7 +111,7 @@ Yeoman fungerar bara om man installerat via GitHub.
60
111
  | |
61
112
  | +---- js
62
113
  | |
63
- | +---- .eslintrc
114
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/client)
64
115
  |
65
116
  +---- server_src
66
117
  | |
@@ -72,42 +123,40 @@ Yeoman fungerar bara om man installerat via GitHub.
72
123
  |
73
124
  +---- App
74
125
  |
75
- +---- src
76
- | |
77
- | +---- .eslintrc
78
- |
79
- +---- vue
80
- |
81
- +---- .eslintrc
126
+ +---- src
127
+ | |
128
+ | +---- .eslintrc (@soleil-se/eslint-config-sitevision/server eller @soleil-se/eslint-config-sitevision/server-es5)
129
+ |
130
+ +---- vue
131
+ |
132
+ +---- .eslintrc (@soleil-se/eslint-config-sitevision/client)
82
133
  ```
83
134
 
84
135
  ### 3.2. Importera config
85
136
 
86
- `client_src/js/.eslintrc`
137
+ I klient context:
87
138
  ```json
88
139
  {
89
140
  "extends": "@soleil-se/eslint-config-sitevision/client"
90
141
  }
91
142
  ```
92
- I vue mappen i en webapp eller `client_src/vue/.eslintrc`
143
+
144
+ I server context:
93
145
  ```json
94
146
  {
95
- "extends": "@soleil-se/eslint-config-sitevision/vue"
147
+ "extends": "@soleil-se/eslint-config-sitevision/server-es6"
96
148
  }
97
149
  ```
98
- I src mappen i en webapp och `server_src/.eslintrc`
99
150
  ```json
100
151
  {
101
152
  "extends": "@soleil-se/eslint-config-sitevision/server"
102
153
  }
103
154
  ```
104
155
 
105
- Om man installerat via GitHub får man plocka bort `@soleil-se/`.
106
-
107
156
  ### 3.3. VS Code
108
157
 
109
- Installera [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint)
110
- till VS Code. Sedan ska det bara vara att tuta och köra.
158
+ Installera [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) till VS Code.
159
+ Byt package manager till `yarn` i settings för eslint.
111
160
 
112
161
  #### 3.3.1. End of line
113
162
  Airbnb använder sig av LF för EOL. Ställs in under [settings](https://code.visualstudio.com/docs/getstarted/settings) i VS Code.
package/client.js CHANGED
@@ -1,20 +1,37 @@
1
1
  module.exports = {
2
- "extends": "airbnb-base",
2
+ "extends": ["airbnb-base", "plugin:vue/recommended"],
3
+ "parser": "vue-eslint-parser",
3
4
  "env": {
4
5
  "browser": true,
5
6
  "jquery": true
6
7
  },
7
- "rules": {},
8
+ "rules": {
9
+ "no-param-reassign": ["error", {
10
+ "props": true,
11
+ "ignorePropertyModificationsFor": ["state"]
12
+ }],
13
+ "vue/max-attributes-per-line": ["error", {
14
+ "singleline": 1,
15
+ "multiline": {
16
+ "max": 1,
17
+ "allowFirstLine": true
18
+ }
19
+ }],
20
+ "vue/component-name-in-template-casing": ["error", "PascalCase", {
21
+ "registeredComponentsOnly": true,
22
+ "ignores": []
23
+ }]
24
+ },
8
25
  "settings": {
9
26
  "import/resolver": {
10
27
  "alias": {
11
- "map": [
28
+ "map": [
12
29
  ["#js", "./client_src/js"],
13
30
  ["#api", "./client_src/js/api"],
14
- ["#vue", "./client_src/js/vue"]
31
+ ["#vue", "./client_src/js/vue"]
15
32
  ],
16
33
  "extensions": [".js", ".json", ".vue"]
17
34
  }
18
35
  }
19
- }
36
+ }
20
37
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soleil-se/eslint-config",
3
- "version": "0.1.7",
3
+ "version": "0.2.0",
4
4
  "description": "Settings for ESLint in a SiteVision project",
5
5
  "author": "Soleil AB",
6
6
  "license": "UNLICENSED",
package/vue.js CHANGED
@@ -1,5 +1,6 @@
1
1
  module.exports = {
2
2
  "extends": ["airbnb-base", "plugin:vue/recommended"],
3
+ "parser": "vue-eslint-parser",
3
4
  "env": {
4
5
  "browser": true,
5
6
  "jquery": true