@soleil-se/eslint-config 2.4.0 → 2.4.1
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.
- package/CHANGELOG.md +54 -4
- package/FAQ.md +21 -0
- package/LICENSE.md +1 -1
- package/README.md +156 -104
- package/client.js +1 -1
- package/docs/structure.md +3 -3
- package/global.js +1 -1
- package/package.json +1 -1
- package/server-es6.js +1 -1
- package/webapp.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,93 +1,143 @@
|
|
|
1
1
|
# Changelog
|
|
2
|
+
|
|
2
3
|
Alla förändringar i detta repository antecknas här.
|
|
3
4
|
|
|
4
5
|
Formatet baseras på [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
5
6
|
och projektet använder [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
7
|
|
|
8
|
+
## [2.4.1] - 2021-08-17
|
|
9
|
+
|
|
10
|
+
### Ändrat
|
|
11
|
+
|
|
12
|
+
- Sätt `ecmaVersion` till `latest` för att slippa uppdatera version varje år.
|
|
13
|
+
|
|
7
14
|
## [2.4.0] - 2021-03-24
|
|
15
|
+
|
|
8
16
|
### Nytt
|
|
17
|
+
|
|
9
18
|
- Meddelande av deprekering för konfigurationerna `@soleil/eslint-config-sitevision/universal` och `@soleil/eslint-config-sitevision/server`
|
|
10
19
|
- Nya konfigurationer med tydligare namn: `@soleil/eslint-config-sitevision/webapp` och `@soleil/eslint-config-sitevision/server-legacy`
|
|
20
|
+
|
|
11
21
|
### Ändrat
|
|
22
|
+
|
|
12
23
|
- Tillåt fler properties per rad i ett objekt i `object-curly-newline`.
|
|
13
24
|
|
|
14
25
|
## [2.3.1] - 2021-02-24
|
|
26
|
+
|
|
15
27
|
### Ändrat
|
|
28
|
+
|
|
16
29
|
- Dra tillbaka till `ecmaVersion` till 2020.
|
|
30
|
+
|
|
17
31
|
## [2.3.0] - 2021-02-24
|
|
32
|
+
|
|
18
33
|
### Ändrat
|
|
34
|
+
|
|
19
35
|
- Fler regler överlappar när man skriver universell kod.
|
|
20
36
|
- Slagit av `import/prefer-default-export`.
|
|
21
37
|
- Slagit av `no-return-assig` i Svelte komponenter.
|
|
22
38
|
- Tagit bort linting av skript i HTML för server konfigurationen för ES5-kod.
|
|
23
39
|
|
|
24
40
|
## [2.2.1] - 2021-01-07
|
|
41
|
+
|
|
25
42
|
### Fixat
|
|
43
|
+
|
|
26
44
|
- Tagit bort `babel-eslint` från dependencies.
|
|
27
45
|
|
|
28
46
|
## [2.2.0] - 2021-01-07
|
|
47
|
+
|
|
29
48
|
### Ändrat
|
|
49
|
+
|
|
30
50
|
- Tagit bort `babel-eslint` och använder standardparsern med ES2020.
|
|
31
51
|
- Förenklat `svelte.config.js`, oftast behövs inte plugin för globbing.
|
|
32
52
|
- Lagt till paketet `cache` som undantag för SiteVision paket.
|
|
33
53
|
|
|
34
54
|
## [2.1.4] - 2020-10-26
|
|
55
|
+
|
|
35
56
|
### Fixat
|
|
57
|
+
|
|
36
58
|
- Tagit bort felaktig konfiguration av `a11y-no-onchange`.
|
|
59
|
+
|
|
37
60
|
## [2.1.3] - 2020-10-21
|
|
61
|
+
|
|
38
62
|
### Ändrat
|
|
63
|
+
|
|
39
64
|
- Lagt till `app_src/views/**/*.js` i server configen.
|
|
65
|
+
|
|
40
66
|
## [2.1.2] - 2020-10-06
|
|
67
|
+
|
|
41
68
|
### Fixat
|
|
69
|
+
|
|
42
70
|
- Felaktiga `parserOptions` i `server-es6` configen.
|
|
71
|
+
|
|
43
72
|
## [2.1.1] - 2020-10-06
|
|
73
|
+
|
|
44
74
|
### Ändrat
|
|
75
|
+
|
|
45
76
|
- Ordning på config så de inställningar Svelte behöver för serversidan kommer med.
|
|
46
77
|
|
|
47
78
|
## [2.1.0] - 2020-09-28
|
|
79
|
+
|
|
48
80
|
### Ändrat
|
|
81
|
+
|
|
49
82
|
- Dependencies som behövs som standard ligger som peerDependencies
|
|
50
|
-
- Dependencies för ramverksspecifika plugins behöver installeras utöver peerDependencies.
|
|
83
|
+
- Dependencies för ramverksspecifika plugins behöver installeras utöver peerDependencies.
|
|
51
84
|
|
|
52
85
|
## [2.0.0] - 2020-09-28
|
|
86
|
+
|
|
53
87
|
### Ändrat
|
|
88
|
+
|
|
54
89
|
- Stöd för Svelte.
|
|
55
90
|
- Uppdaterad struktur.
|
|
56
91
|
- Uppdatering till ESLint 7.
|
|
92
|
+
|
|
57
93
|
### Tagit bort
|
|
94
|
+
|
|
58
95
|
- Konfigurationen för Vue, ligger nu i client.
|
|
59
96
|
|
|
60
97
|
## [1.1.2] - 2020-02-05
|
|
98
|
+
|
|
61
99
|
### Ändrat
|
|
100
|
+
|
|
62
101
|
- Ändrat regeln `import/extensions` så den ignorerar json-filer.
|
|
63
102
|
|
|
64
103
|
## [1.1.1] - 2020-01-27
|
|
104
|
+
|
|
65
105
|
### Ändrat
|
|
106
|
+
|
|
66
107
|
- Ändrat regeln `import/extensions` så den ignorerar vue-filer.
|
|
67
108
|
|
|
68
109
|
## [1.1.0] - 2020-01-21
|
|
110
|
+
|
|
69
111
|
### Ändrat
|
|
112
|
+
|
|
70
113
|
- Ändrat regeln `import/extensions` så den ignorerar paket, löser problem med import via alias.
|
|
71
114
|
|
|
72
115
|
## [1.0.0] - 2020-01-13
|
|
116
|
+
|
|
73
117
|
### Ändrat
|
|
118
|
+
|
|
74
119
|
- Uppdaterat till ESLint 6.
|
|
75
120
|
|
|
76
121
|
## [0.3.3] - 2019-12-06
|
|
122
|
+
|
|
77
123
|
### Ändrat
|
|
124
|
+
|
|
78
125
|
- Det får nu vara max 3 attribut per rad i Vue (`vue/max-attributes-per-line`).
|
|
79
126
|
|
|
80
127
|
## [0.3.2] - 2019-06-03
|
|
128
|
+
|
|
81
129
|
### Fixat
|
|
130
|
+
|
|
82
131
|
- Lagt till `server_src/api` i server på den globala configen.
|
|
83
132
|
|
|
84
133
|
## [0.3.1] - 2019-05-20
|
|
134
|
+
|
|
85
135
|
### Ändrat
|
|
136
|
+
|
|
86
137
|
- Slagit av `global-require` för att kunna skriva `require` innanför IIFE i `src/index.js` i en WebApp.
|
|
87
138
|
|
|
88
139
|
## [0.3.0] - 2019-05-20
|
|
89
|
-
### Nytt
|
|
90
|
-
- Lagt till en global config som kan användas i roten av ett projekt som använder standardstrukturen och `@soleil/sv-gulp-build@^3.0.0`.
|
|
91
|
-
|
|
92
140
|
|
|
141
|
+
### Nytt
|
|
93
142
|
|
|
143
|
+
- Lagt till en global config som kan användas i roten av ett projekt som använder standardstrukturen och `@soleil/sv-gulp-build@^3.0.0`.
|
package/FAQ.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# FAQ
|
|
2
|
+
<!-- TOC depthTo:2 -->
|
|
3
|
+
|
|
4
|
+
- [Parsing error: Unexpected token](#Parsing-error:-Unexpected-token)
|
|
5
|
+
|
|
6
|
+
<!-- /TOC -->
|
|
7
|
+
|
|
8
|
+
## Parsing error: Unexpected token
|
|
9
|
+
|
|
10
|
+
### Felmeddelandet
|
|
11
|
+
```sh
|
|
12
|
+
1:1 Parsing error: Unexpected token <
|
|
13
|
+
```
|
|
14
|
+
### Inträffar
|
|
15
|
+
När man kör `yarn gulp` och försöker bygga en webbapp med Vue.
|
|
16
|
+
|
|
17
|
+
### Vad det betyder
|
|
18
|
+
Eslint tasken klagar, förmodligen är den utdaterad och behöver uppdateras.
|
|
19
|
+
|
|
20
|
+
### Hur man kan lösa det
|
|
21
|
+
Följ stegen för Vue här: https://github.com/soleilit/eslint-config-sitevision#2-installera
|
package/LICENSE.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(c) Copyright 2020 Soleil AB, all rights reserved.
|
|
1
|
+
(c) Copyright 2020 Soleil AB, all rights reserved.
|
package/README.md
CHANGED
|
@@ -1,123 +1,136 @@
|
|
|
1
|
-
# eslint-config-sitevision
|
|
2
1
|
|
|
3
|
-
|
|
2
|
+
# `@soleil-se/eslint-config-sitevision@^2.0.0`
|
|
4
3
|
|
|
5
|
-
|
|
6
|
-
https://github.com/airbnb/javascript
|
|
4
|
+
ESLint configs anpassade för SiteVision som bygger på Airbnbs Javascript styleguide.
|
|
7
5
|
|
|
8
|
-
**
|
|
9
|
-
|
|
10
|
-
https://vuejs.org/v2/style-guide/
|
|
6
|
+
**Klient & Server (ES2015+)**
|
|
7
|
+
<https://github.com/airbnb/javascript>
|
|
11
8
|
|
|
12
|
-
**Server (ES5)**
|
|
13
|
-
https://github.com/airbnb/javascript/tree/es5-deprecated/es5
|
|
9
|
+
**Server (ES5)**
|
|
10
|
+
<https://github.com/airbnb/javascript/tree/es5-deprecated/es5>
|
|
14
11
|
|
|
15
12
|
Om man stöter på ett fel man inte förstår kan man kolla i styleguiden eller söka på eslints hemsida.
|
|
16
|
-
https://eslint.org/docs/rules
|
|
13
|
+
<https://eslint.org/docs/rules/>
|
|
17
14
|
|
|
18
|
-
##
|
|
15
|
+
## Innehållsförteckning
|
|
19
16
|
|
|
20
17
|
<!-- TOC depthFrom:2 updateOnSave:true -->
|
|
21
18
|
|
|
22
|
-
- [
|
|
23
|
-
- [
|
|
19
|
+
- [Innehållsförteckning](#innehållsförteckning)
|
|
20
|
+
- [Installera](#installera)
|
|
24
21
|
- [Svelte](#svelte)
|
|
25
22
|
- [Vue](#vue)
|
|
26
|
-
- [
|
|
27
|
-
- [
|
|
28
|
-
- [
|
|
29
|
-
- [
|
|
30
|
-
- [
|
|
31
|
-
- [
|
|
32
|
-
- [
|
|
33
|
-
- [
|
|
34
|
-
- [
|
|
35
|
-
- [
|
|
36
|
-
- [
|
|
37
|
-
- [
|
|
38
|
-
- [
|
|
39
|
-
- [
|
|
40
|
-
- [
|
|
41
|
-
- [
|
|
42
|
-
- [
|
|
43
|
-
- [
|
|
44
|
-
- [
|
|
45
|
-
- [
|
|
46
|
-
- [
|
|
47
|
-
- [
|
|
48
|
-
- [
|
|
49
|
-
- [
|
|
50
|
-
- [
|
|
23
|
+
- [Migrering 1.x.x -> 2.x.x](#migrering-1xx---2xx)
|
|
24
|
+
- [Config](#config)
|
|
25
|
+
- [Struktur](#struktur)
|
|
26
|
+
- [Importera config](#importera-config)
|
|
27
|
+
- [Global](#global)
|
|
28
|
+
- [WebApp](#webapp)
|
|
29
|
+
- [Client](#client)
|
|
30
|
+
- [Server](#server)
|
|
31
|
+
- [ESLint ignore](#eslint-ignore)
|
|
32
|
+
- [Editors](#editors)
|
|
33
|
+
- [VS Code](#vs-code)
|
|
34
|
+
- [End of line](#end-of-line)
|
|
35
|
+
- [Indentation](#indentation)
|
|
36
|
+
- [Autofix](#autofix)
|
|
37
|
+
- [Max length](#max-length)
|
|
38
|
+
- [Velocity](#velocity)
|
|
39
|
+
- [Svelte](#svelte-1)
|
|
40
|
+
- [Vue](#vue-1)
|
|
41
|
+
- [Global konfig i underkatalog](#global-konfig-i-underkatalog)
|
|
42
|
+
- [Komplett config](#komplett-config)
|
|
43
|
+
- [CLI](#cli)
|
|
44
|
+
- [Svelte](#svelte-2)
|
|
45
|
+
- [Kodformatering](#kodformatering)
|
|
46
|
+
- [Preprocessing](#preprocessing)
|
|
47
|
+
- [Git](#git)
|
|
51
48
|
|
|
52
49
|
<!-- /TOC -->
|
|
53
50
|
|
|
54
|
-
##
|
|
51
|
+
## Installera
|
|
55
52
|
|
|
56
|
-
Installera konfigurationen, eslint och de plugins som behövs plugins i ditt projekt genom att köra:
|
|
57
|
-
`yarn add @soleil-se/eslint-config-sitevision eslint@^7 eslint-config-airbnb-base@^14 eslint-plugin-import@^2 --dev`
|
|
53
|
+
Installera konfigurationen, eslint och de plugins som behövs plugins i ditt projekt genom att köra:
|
|
54
|
+
`yarn add @soleil-se/eslint-config-sitevision eslint@^7 eslint-config-airbnb-base@^14 eslint-plugin-import@^2 --dev`
|
|
58
55
|
|
|
59
56
|
### Svelte
|
|
60
|
-
|
|
57
|
+
|
|
58
|
+
Om Svelte används i projektet:
|
|
61
59
|
`yarn add eslint-plugin-svelte3@^3 svelte@^3 svelte-preprocess@^4 --dev`
|
|
62
60
|
|
|
63
61
|
### Vue
|
|
64
|
-
Om Vue används i projektet:
|
|
65
|
-
`yarn add eslint-plugin-vue@^6 vue-eslint-parser@^7 --dev`
|
|
66
62
|
|
|
67
|
-
|
|
63
|
+
Om Vue används i projektet:
|
|
64
|
+
`yarn add eslint-plugin-vue@^6 vue-eslint-parser@^7 --dev`
|
|
65
|
+
|
|
66
|
+
## Migrering 1.x.x -> 2.x.x
|
|
67
|
+
|
|
68
|
+
- Se till att version 7 av ESLint är intstallerat i projektet.
|
|
69
|
+
- Installera alla dependencies enligt installationssteget.
|
|
70
|
+
- Om den `@soleil-se/eslint-config-sitevision/vue` används byt till `@soleil-se/eslint-config-sitevision/client`.
|
|
68
71
|
|
|
69
|
-
|
|
70
|
-
* Installera alla dependencies enligt installationssteget.
|
|
71
|
-
* Om den `@soleil-se/eslint-config-sitevision/vue` används byt till `@soleil-se/eslint-config-sitevision/client`.
|
|
72
|
+
## Config
|
|
72
73
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
https://eslint.org/docs/user-guide/configuring#using-configuration-files-1
|
|
74
|
+
ESLint läster främst från `.eslintrc.js` filer i projektet.
|
|
75
|
+
<https://eslint.org/docs/user-guide/configuring#using-configuration-files-1>
|
|
76
76
|
|
|
77
|
-
###
|
|
77
|
+
### Struktur
|
|
78
78
|
|
|
79
79
|
[Här finns exempel på struktur](./docs/structure.md).
|
|
80
80
|
|
|
81
|
-
###
|
|
81
|
+
### Importera config
|
|
82
82
|
|
|
83
|
-
###
|
|
84
|
-
|
|
83
|
+
### Global
|
|
84
|
+
|
|
85
|
+
Global konfiguration som läses in i rotkatalogen för projektet.
|
|
85
86
|
Kan användas om projektet följer standardstrukturen.
|
|
87
|
+
|
|
86
88
|
```js
|
|
87
89
|
module.exports = {
|
|
88
90
|
extends: '@soleil-se/eslint-config-sitevision/global'
|
|
89
91
|
}
|
|
90
92
|
```
|
|
91
|
-
|
|
92
|
-
|
|
93
|
+
|
|
94
|
+
### WebApp
|
|
95
|
+
|
|
96
|
+
Konfiguration om man har en självstående WebApp.
|
|
93
97
|
Läses in i rotkatalogen för appen.
|
|
98
|
+
|
|
94
99
|
```js
|
|
95
100
|
module.exports = {
|
|
96
101
|
extends: '@soleil-se/eslint-config-sitevision/webapp',
|
|
97
102
|
root: true,
|
|
98
103
|
}
|
|
99
104
|
```
|
|
100
|
-
|
|
105
|
+
|
|
106
|
+
### Client
|
|
107
|
+
|
|
101
108
|
Konfiguration för kod som ska köras på klientsidan (browsern).
|
|
109
|
+
|
|
102
110
|
```js
|
|
103
111
|
module.exports = {
|
|
104
112
|
extends: '@soleil-se/eslint-config-sitevision/client',
|
|
105
113
|
root: true,
|
|
106
114
|
}
|
|
107
115
|
```
|
|
108
|
-
### 4.2.4 Server
|
|
109
|
-
Konfiguration för kod som ska köras på serversidan (Sitevision).
|
|
110
116
|
|
|
111
|
-
|
|
117
|
+
### Server
|
|
118
|
+
|
|
119
|
+
Konfiguration för kod som ska köras på serversidan (Sitevision).
|
|
120
|
+
|
|
121
|
+
I kontext med stöd för ES6+.
|
|
112
122
|
Till exempel serverkod som byggs ihop.
|
|
123
|
+
|
|
113
124
|
```js
|
|
114
125
|
module.exports = {
|
|
115
126
|
extends: '@soleil-se/eslint-config-sitevision/server-es6',
|
|
116
127
|
root: true,
|
|
117
128
|
}
|
|
118
129
|
```
|
|
119
|
-
|
|
130
|
+
|
|
131
|
+
I kontext med stöd för ES5.
|
|
120
132
|
Till exempel serverkod som ska laddas upp som den är till Sitevision utan byggsteg.
|
|
133
|
+
|
|
121
134
|
```js
|
|
122
135
|
module.exports = {
|
|
123
136
|
extends: '@soleil-se/eslint-config-sitevision/server-legacy',
|
|
@@ -125,8 +138,10 @@ module.exports = {
|
|
|
125
138
|
}
|
|
126
139
|
```
|
|
127
140
|
|
|
128
|
-
###
|
|
141
|
+
### ESLint ignore
|
|
142
|
+
|
|
129
143
|
Lägg med en `.eslintignore` fil i roten av projektet för att slå av linting av filer i `node_modules`, `dist` och velocityfiler.
|
|
144
|
+
|
|
130
145
|
```
|
|
131
146
|
dist
|
|
132
147
|
node_nodules
|
|
@@ -135,24 +150,27 @@ node_nodules
|
|
|
135
150
|
svelte.config
|
|
136
151
|
```
|
|
137
152
|
|
|
138
|
-
##
|
|
139
|
-
|
|
153
|
+
## Editors
|
|
154
|
+
|
|
155
|
+
Enklaste sättet att komma igång med ESLint är att installera det som extension i din editor.
|
|
140
156
|
|
|
141
|
-
###
|
|
157
|
+
### VS Code
|
|
142
158
|
|
|
143
|
-
Installera [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) till VS Code.
|
|
144
|
-
Byt package manager till `yarn` i settings för eslint.
|
|
159
|
+
Installera [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) till VS Code.
|
|
160
|
+
Byt package manager till `yarn` i settings för eslint.
|
|
145
161
|
|
|
146
|
-
```json
|
|
162
|
+
```json
|
|
147
163
|
{
|
|
148
164
|
"eslint.packageManager": "yarn"
|
|
149
165
|
}
|
|
150
166
|
```
|
|
151
167
|
|
|
152
|
-
####
|
|
153
|
-
|
|
168
|
+
#### End of line
|
|
169
|
+
|
|
170
|
+
Airbnb använder sig av LF för EOL. Ställs in under [settings](https://code.visualstudio.com/docs/getstarted/settings) i VS Code.
|
|
154
171
|
Ändra `\r\n` till `\n`.
|
|
155
172
|
Sen vill man även ha att en ny rad inkluderas i filerna.
|
|
173
|
+
|
|
156
174
|
```json
|
|
157
175
|
{
|
|
158
176
|
"files.eol": "\n",
|
|
@@ -160,8 +178,10 @@ Sen vill man även ha att en ny rad inkluderas i filerna.
|
|
|
160
178
|
}
|
|
161
179
|
```
|
|
162
180
|
|
|
163
|
-
####
|
|
164
|
-
|
|
181
|
+
#### Indentation
|
|
182
|
+
|
|
183
|
+
Airbnb indenterar med två spaces.
|
|
184
|
+
|
|
165
185
|
```json
|
|
166
186
|
{
|
|
167
187
|
"editor.tabSize": 2,
|
|
@@ -169,8 +189,10 @@ Airbnb indenterar med två spaces.
|
|
|
169
189
|
}
|
|
170
190
|
```
|
|
171
191
|
|
|
172
|
-
####
|
|
173
|
-
|
|
192
|
+
#### Autofix
|
|
193
|
+
|
|
194
|
+
Man kan ställa in så enklare fel åtgärdas automatiskt under [settings](https://code.visualstudio.com/docs/getstarted/settings) i VS Code.
|
|
195
|
+
|
|
174
196
|
```json
|
|
175
197
|
{
|
|
176
198
|
"editor.codeActionsOnSave": {
|
|
@@ -179,7 +201,8 @@ Man kan ställa in så enklare fel åtgärdas automatiskt under [settings](https
|
|
|
179
201
|
}
|
|
180
202
|
```
|
|
181
203
|
|
|
182
|
-
####
|
|
204
|
+
#### Max length
|
|
205
|
+
|
|
183
206
|
Airbnb föresrpåkar en maxlängd på 100 tecken på en rad.
|
|
184
207
|
Man kan ställa så man visar en linje i VS Code för att visualisera detta. Görs i [settings](https://code.visualstudio.com/docs/getstarted/settings).
|
|
185
208
|
|
|
@@ -192,6 +215,7 @@ Man kan ställa så man visar en linje i VS Code för att visualisera detta. Gö
|
|
|
192
215
|
```
|
|
193
216
|
|
|
194
217
|
Eller om man bara vill visa för JavaScript och Vue:
|
|
218
|
+
|
|
195
219
|
```json
|
|
196
220
|
{
|
|
197
221
|
"[javascript]": {
|
|
@@ -206,8 +230,11 @@ Eller om man bara vill visa för JavaScript och Vue:
|
|
|
206
230
|
}
|
|
207
231
|
}
|
|
208
232
|
```
|
|
209
|
-
|
|
233
|
+
|
|
234
|
+
#### Velocity
|
|
235
|
+
|
|
210
236
|
För att få stöd för skripttaggar i Velocity behöver man lägga in följande i [settings](https://code.visualstudio.com/docs/getstarted/settings).
|
|
237
|
+
|
|
211
238
|
```json
|
|
212
239
|
"eslint.validate": [
|
|
213
240
|
"javascript",
|
|
@@ -215,36 +242,46 @@ För att få stöd för skripttaggar i Velocity behöver man lägga in följande
|
|
|
215
242
|
"velocity"
|
|
216
243
|
]
|
|
217
244
|
```
|
|
218
|
-
|
|
219
|
-
|
|
245
|
+
|
|
246
|
+
#### Svelte
|
|
247
|
+
|
|
248
|
+
För att få stöd för Svelte behöver man lägga in följande i [settings](https://code.visualstudio.com/docs/getstarted/settings).
|
|
249
|
+
|
|
220
250
|
```json
|
|
221
251
|
"eslint.validate": [
|
|
222
252
|
"javascript",
|
|
223
253
|
"javascriptreact",
|
|
224
|
-
"
|
|
254
|
+
"svelte"
|
|
225
255
|
]
|
|
226
256
|
```
|
|
227
257
|
|
|
228
|
-
####
|
|
229
|
-
|
|
258
|
+
#### Vue
|
|
259
|
+
|
|
260
|
+
För att få stöd för Vue behöver man lägga in följande i [settings](https://code.visualstudio.com/docs/getstarted/settings).
|
|
261
|
+
|
|
230
262
|
```json
|
|
231
263
|
"eslint.validate": [
|
|
232
264
|
"javascript",
|
|
233
265
|
"javascriptreact",
|
|
234
|
-
"
|
|
266
|
+
"vue"
|
|
235
267
|
]
|
|
236
268
|
```
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
269
|
+
|
|
270
|
+
#### Global konfig i underkatalog
|
|
271
|
+
|
|
272
|
+
Om man vill köra ESLint i en underkatalog som kör `@soleil-se/sv-gulp-build^3.0.0` behöver man lägga till denna som `workingDirectory` i ESLint tilläggets inställningar.
|
|
273
|
+
Läs mer här: <https://github.com/microsoft/vscode-eslint#settings-options>
|
|
240
274
|
|
|
241
275
|
Exempelvis om det ligger i mappen `@next`:
|
|
276
|
+
|
|
242
277
|
```json
|
|
243
278
|
"eslint.workingDirectories": [".", { "directory": "./@next", "changeProcessCWD": true }],
|
|
244
279
|
```
|
|
245
280
|
|
|
246
|
-
####
|
|
281
|
+
#### Komplett config
|
|
282
|
+
|
|
247
283
|
`Ctrl` + `Shift` + `P` och skriv settings och öppna `settings.json`.
|
|
284
|
+
|
|
248
285
|
```json
|
|
249
286
|
{
|
|
250
287
|
"files.eol": "\n",
|
|
@@ -272,30 +309,40 @@ Exempelvis om det ligger i mappen `@next`:
|
|
|
272
309
|
},
|
|
273
310
|
}
|
|
274
311
|
```
|
|
275
|
-
## 6. CLI
|
|
276
|
-
Om man vill köra ESLint i sin teminal.
|
|
277
|
-
https://eslint.org/docs/user-guide/command-line-interface
|
|
278
312
|
|
|
279
|
-
##
|
|
280
|
-
|
|
313
|
+
## CLI
|
|
314
|
+
|
|
315
|
+
Om man vill köra ESLint i sin teminal.
|
|
316
|
+
<https://eslint.org/docs/user-guide/command-line-interface>
|
|
317
|
+
|
|
318
|
+
## Svelte
|
|
281
319
|
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
320
|
+
Installera [Svelte](https://marketplace.visualstudio.com/items?itemName=svelte.svelte-vscode) tillägget till VS Code för att få korrekt highlighing osv.
|
|
321
|
+
|
|
322
|
+
### Kodformatering
|
|
323
|
+
|
|
324
|
+
Formatering av kod i Svelte använder Prettier så man behöver lägga till insällningar för det så HTML kan formateras,
|
|
325
|
+
dessvärre påverkar detta även JavaScript så några regler som man är van vid har fått stängas av så
|
|
326
|
+
det inte krockar med Prettier.
|
|
286
327
|
Skapa en fil som heter `.prettierrc.js` i roten av projektet.
|
|
328
|
+
|
|
287
329
|
```js
|
|
288
330
|
module.exports = require('@soleil-se/eslint-config-sitevision/svelte.prettier');
|
|
289
331
|
```
|
|
332
|
+
|
|
290
333
|
För att formatera automatiskt behöver man lägga till följande i `settings.json` i VS Code.
|
|
334
|
+
|
|
291
335
|
```json
|
|
292
336
|
{
|
|
293
337
|
"[svelte]": {
|
|
294
|
-
"editor.formatOnSave": true
|
|
295
|
-
|
|
338
|
+
"editor.formatOnSave": true,
|
|
339
|
+
"editor.defaultFormatter": "svelte.svelte-vscode"
|
|
340
|
+
},
|
|
296
341
|
}
|
|
297
342
|
```
|
|
343
|
+
|
|
298
344
|
Man kan även stänga av formateringen av skript genom att lägga till kommentaren `<!-- prettier-ignore -->` före skripttaggen om det blir krockar och problem.
|
|
345
|
+
|
|
299
346
|
```svelte
|
|
300
347
|
<!-- prettier-ignore -->
|
|
301
348
|
<script>
|
|
@@ -304,11 +351,14 @@ Man kan även stänga av formateringen av skript genom att lägga till kommentar
|
|
|
304
351
|
|
|
305
352
|
<p>{foo}</p>
|
|
306
353
|
```
|
|
307
|
-
|
|
308
|
-
|
|
354
|
+
|
|
355
|
+
### Preprocessing
|
|
356
|
+
|
|
357
|
+
För att få korrekta felmeddelanden i SCSS och Less behöver man berätta för Svelte att man använder en preprocessor.
|
|
309
358
|
Skapa en fil som heter `svelte.config.js` i roten av projektet.
|
|
310
359
|
|
|
311
360
|
Om du använder SCSS i projektet:
|
|
361
|
+
|
|
312
362
|
```js
|
|
313
363
|
/* eslint-disable import/no-extraneous-dependencies */
|
|
314
364
|
const preprocess = require('svelte-preprocess');
|
|
@@ -324,6 +374,7 @@ module.exports = {
|
|
|
324
374
|
```
|
|
325
375
|
|
|
326
376
|
Om du använder Less i projektet:
|
|
377
|
+
|
|
327
378
|
```js
|
|
328
379
|
/* eslint-disable import/no-extraneous-dependencies */
|
|
329
380
|
const preprocess = require('svelte-preprocess');
|
|
@@ -339,8 +390,10 @@ module.exports = {
|
|
|
339
390
|
|
|
340
391
|
```
|
|
341
392
|
|
|
342
|
-
##
|
|
393
|
+
## Git
|
|
394
|
+
|
|
343
395
|
Om man har problem med linebreaks i git kan man behöva göra följande:
|
|
396
|
+
|
|
344
397
|
1. Pusha upp / stasha alla förändringar.
|
|
345
398
|
2. Skapa en fil i roten av projektet med namnet `.gitattributes`.
|
|
346
399
|
3. Ange innehåll i filen: `* text=auto eol=lf`.
|
|
@@ -348,6 +401,5 @@ Om man har problem med linebreaks i git kan man behöva göra följande:
|
|
|
348
401
|
5. Kör: `git reset --hard`.
|
|
349
402
|
6. Pusha upp filen.
|
|
350
403
|
|
|
351
|
-
Mer info:
|
|
352
|
-
https://stackoverflow.com/questions/9976986/force-lf-eol-in-git-repo-and-working-copy/34810209#34810209
|
|
353
|
-
|
|
404
|
+
Mer info:
|
|
405
|
+
<https://stackoverflow.com/questions/9976986/force-lf-eol-in-git-repo-and-working-copy/34810209#34810209>
|
package/client.js
CHANGED
package/docs/structure.md
CHANGED
|
@@ -18,7 +18,7 @@ Ett projekt som kör `@soleil/sv-gulp-build@^3.0.0` och inläsning global config
|
|
|
18
18
|
| |
|
|
19
19
|
| +---- snippets
|
|
20
20
|
| | |
|
|
21
|
-
| | +---- .eslintrc.js (@soleil/eslint-config-sitevision/server)
|
|
21
|
+
| | +---- .eslintrc.js (@soleil/eslint-config-sitevision/server-legacy)
|
|
22
22
|
| |
|
|
23
23
|
| +---- webapps
|
|
24
24
|
| |
|
|
@@ -28,7 +28,7 @@ Ett projekt som kör `@soleil/sv-gulp-build@^3.0.0` och inläsning global config
|
|
|
28
28
|
| |
|
|
29
29
|
| +---- src
|
|
30
30
|
| |
|
|
31
|
-
| +---- .eslintrc.js (@soleil/eslint-config-sitevision/server)
|
|
31
|
+
| +---- .eslintrc.js (@soleil/eslint-config-sitevision/server-legacy)
|
|
32
32
|
|
|
|
33
33
|
+---- .eslintrc.js (@soleil/eslint-config-sitevision/global)
|
|
34
34
|
|
|
@@ -75,7 +75,7 @@ Ett projekt som kör `@soleil/sv-gulp-build@^3.0.0` och inläsning av enskilda c
|
|
|
75
75
|
|
|
|
76
76
|
+---- snippets
|
|
77
77
|
| |
|
|
78
|
-
| +---- .eslintrc.js (@soleil/eslint-config-sitevision/server)
|
|
78
|
+
| +---- .eslintrc.js (@soleil/eslint-config-sitevision/server-legacy)
|
|
79
79
|
|
|
|
80
80
|
+---- webapps
|
|
81
81
|
|
|
package/global.js
CHANGED
package/package.json
CHANGED
package/server-es6.js
CHANGED