Skip to content

Commit db62d42

Browse files
authored
Use ESlint to format the Javascript and Vue files. (#365)
* Use ESlint to format the Javascript and Vue files. Strongly recommended rules applied. * Add google format package
1 parent 32ef4f9 commit db62d42

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+1417
-1256
lines changed

frontend/.eslintrc.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
module.exports = {
2+
extends: [
3+
'google',
4+
'plugin:vue/base',
5+
'plugin:vue/essential',
6+
'plugin:vue/strongly-recommended',
7+
],
8+
rules: {
9+
// override/add rules settings here, such as:
10+
'vue/no-unused-vars': 'warn',
11+
'max-len': ["warn", 120],
12+
}
13+
}

frontend/package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@
4949
"copy-webpack-plugin": "^4.0.1",
5050
"cross-env": "^4.0.0",
5151
"css-loader": "^0.28.0",
52+
"eslint": "^4.19.1",
53+
"eslint-config-google": "^0.9.1",
54+
"eslint-plugin-vue": "^4.4.0",
5255
"express": "^4.16.2",
5356
"extract-text-webpack-plugin": "^2.1.0",
5457
"fecs": "1.5.2",

frontend/src/App.vue

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,33 @@
11
<template>
2-
<div id="app">
3-
<v-app>
4-
<AppMenu :initialRoute="initialRoute">
5-
</AppMenu>
6-
<router-view></router-view>
7-
</v-app>
8-
</div>
2+
<div id="app">
3+
<v-app>
4+
<AppMenu :initial-route="initialRoute"/>
5+
<router-view/>
6+
</v-app>
7+
</div>
98
</template>
109

1110
<script>
12-
import AppMenu from './common/component/AppMenu'
11+
import AppMenu from './common/component/AppMenu';
1312
1413
export default {
1514
name: 'App',
1615
components: {
17-
AppMenu
16+
AppMenu,
1817
},
1918
data() {
2019
return {
21-
initialRoute: "scalars"
22-
}
20+
initialRoute: 'scalars',
21+
};
2322
},
2423
created() {
2524
if (location.hash && location.hash != '#/') {
2625
this.initialRoute = /(\#\/)(\w*)([?|&]{0,1})/.exec(location.hash)[2];
27-
}
28-
else {
26+
} else {
2927
location.hash = '#/scalars';
3028
}
31-
}
32-
}
29+
},
30+
};
3331
</script>
3432

3533
<style lang="stylus">

frontend/src/audio/Audio.vue

Lines changed: 52 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,31 @@
11
<template>
2-
<div class="visual-dl-page-container">
3-
<div class="visual-dl-page-left">
4-
<ui-audio-container
5-
:expand="true"
6-
:config="filteredConfig"
7-
:runsItems="runsItems"
8-
:tagList="filteredTagsList"
9-
:title="'Tags matching ' + config.groupNameReg"
10-
></ui-audio-container>
11-
<ui-audio-container
12-
v-for="item in groupedTags"
13-
:key="item.group"
14-
:config="filteredConfig"
15-
:runsItems="runsItems"
16-
:tagList="item.tags"
17-
:title="item.group"
18-
></ui-audio-container>
19-
</div>
20-
<div class="visual-dl-page-right">
21-
<div class="visual-dl-page-config-container">
22-
<ui-config :runsItems="runsItems" :config="config"
23-
></ui-config>
24-
</div>
25-
</div>
2+
<div class="visual-dl-page-container">
3+
<div class="visual-dl-page-left">
4+
<ui-audio-container
5+
:expand="true"
6+
:config="filteredConfig"
7+
:runs-items="runsItems"
8+
:tag-list="filteredTagsList"
9+
:title="'Tags matching ' + config.groupNameReg"
10+
/>
11+
<ui-audio-container
12+
v-for="item in groupedTags"
13+
:key="item.group"
14+
:config="filteredConfig"
15+
:runs-items="runsItems"
16+
:tag-list="item.tags"
17+
:title="item.group"
18+
/>
2619
</div>
20+
<div class="visual-dl-page-right">
21+
<div class="visual-dl-page-config-container">
22+
<ui-config
23+
:runs-items="runsItems"
24+
:config="config"
25+
/>
26+
</div>
27+
</div>
28+
</div>
2729
</template>
2830

2931
<script>
@@ -32,93 +34,92 @@ import {getPluginAudioTags, getRuns} from '../service';
3234
import {debounce, flatten, uniq, isArray} from 'lodash';
3335
import autoAdjustHeight from '../common/util/autoAdjustHeight';
3436
35-
import Config from './ui/Config'
37+
import Config from './ui/Config';
3638
import AudioPanelContainer from './ui/AudioPanelContainer';
3739
3840
export default {
3941
name: 'Images',
4042
components: {
4143
'ui-config': Config,
42-
'ui-audio-container': AudioPanelContainer
44+
'ui-audio-container': AudioPanelContainer,
4345
},
44-
data () {
46+
data() {
4547
return {
4648
runsArray: [],
4749
tags: [],
4850
config: {
4951
groupNameReg: '.*',
5052
isActualImageSize: false,
5153
runs: [],
52-
running: true
54+
running: true,
5355
},
54-
filteredTagsList: []
55-
}
56+
filteredTagsList: [],
57+
};
5658
},
5759
computed: {
5860
runsItems() {
5961
let runsArray = this.runsArray || [];
60-
return runsArray.map(item => {
62+
return runsArray.map((item) => {
6163
return {
6264
name: item,
63-
value: item
65+
value: item,
6466
};
6567
});
6668
},
6769
tagsList() {
6870
let tags = this.tags;
6971
7072
let runs = Object.keys(tags);
71-
let tagsArray = runs.map(run => Object.keys(tags[run]));
73+
let tagsArray = runs.map((run) => Object.keys(tags[run]));
7274
let allUniqTags = uniq(flatten(tagsArray));
7375
7476
// get the data for every chart
75-
return allUniqTags.map(tag => {
76-
let tagList = runs.map(run => {
77+
return allUniqTags.map((tag) => {
78+
let tagList = runs.map((run) => {
7779
return {
7880
run,
79-
tag: tags[run][tag]
81+
tag: tags[run][tag],
8082
};
81-
}).filter(item => item.tag !== undefined);
83+
}).filter((item) => item.tag !== undefined);
8284
return {
8385
tagList,
8486
tag,
85-
group: tag.split('/')[0]
87+
group: tag.split('/')[0],
8688
};
8789
});
8890
},
8991
groupedTags() {
9092
let tagsList = this.tagsList || [];
9193
// put data in group
9294
let groupData = {};
93-
tagsList.forEach(item => {
95+
tagsList.forEach((item) => {
9496
let group = item.group;
9597
if (groupData[group] === undefined) {
9698
groupData[group] = [];
9799
groupData[group].push(item);
98-
}
99-
else {
100+
} else {
100101
groupData[group].push(item);
101102
}
102103
});
103104
104105
// to array
105106
let groups = Object.keys(groupData);
106-
return groups.map(group => {
107+
return groups.map((group) => {
107108
return {
108109
group,
109-
tags: groupData[group]
110+
tags: groupData[group],
110111
};
111112
});
112113
},
113114
filteredConfig() {
114115
let config = this.config || {};
115116
let filteredConfig = {};
116-
Object.keys(config).forEach(key => {
117+
Object.keys(config).forEach((key) => {
117118
let val = config[key];
118119
filteredConfig[key] = val;
119120
});
120121
return filteredConfig;
121-
}
122+
},
122123
},
123124
created() {
124125
getPluginAudioTags().then(({errno, data}) => {
@@ -139,25 +140,25 @@ export default {
139140
},
140141
watch: {
141142
'config.groupNameReg': function(val) {
142-
this.throttledFilterTagsList()
143-
}
143+
this.throttledFilterTagsList();
144+
},
144145
},
145-
methods:{
146+
methods: {
146147
filterTagsList(groupNameReg) {
147148
if (!groupNameReg) {
148149
this.filteredTagsList = [];
149150
return;
150151
}
151152
let tagsList = this.tagsList || [];
152153
let regExp = new RegExp(groupNameReg);
153-
this.filteredTagsList = tagsList.filter(item => regExp.test(item.tag));
154+
this.filteredTagsList = tagsList.filter((item) => regExp.test(item.tag));
154155
},
155156
throttledFilterTagsList: _.debounce(
156157
function() {
157-
this.filterTagsList(this.config.groupNameReg)
158+
this.filterTagsList(this.config.groupNameReg);
158159
}, 300
159160
),
160-
}
161+
},
161162
};
162163
163164
</script>

frontend/src/audio/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ import Audio from './Audio';
55
router.add({
66
target: '#content',
77
rule: '/audio',
8-
Component: Audio
8+
Component: Audio,
99
});

0 commit comments

Comments
 (0)