-
Notifications
You must be signed in to change notification settings - Fork 1
/
github-labels.js
111 lines (108 loc) · 2.27 KB
/
github-labels.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
function updateLabel (label) {
var flag = false;
[].slice.call(document.querySelectorAll(".labels-list-item"))
.forEach(function(element) {
if (element.querySelector('.label-link').textContent.trim() === label.name) {
flag = true
element.querySelector('.js-edit-label').click()
element.querySelector('.js-new-label-name-input').value = label.name
element.querySelector('.js-new-label-color-input').value = '#' + label.color
element.querySelector('.js-edit-label-cancel ~ .btn-primary').disabled = false
element.querySelector('.js-edit-label-cancel ~ .btn-primary').click()
}
})
return flag
}
function addNewLabel (label) {
document.querySelector('.js-new-label-name-input').value = label.name
document.querySelector('.js-new-label-color-input').value = '#' + label.color
document.querySelector('.js-details-target ~ .btn-primary').disabled = false
document.querySelector('.js-details-target ~ .btn-primary').click()
}
function addLabel (label) {
if (!updateLabel(label)) addNewLabel(label)
}
[
{
"name": "bug",
"color": "fc2929"
},
{
"name": "duplicate",
"color": "cccccc"
},
{
"name": "enhancement",
"color": "84b6eb"
},
{
"name": "invalid",
"color": "e6e6e6"
},
{
"name": "priority: BLOCKER",
"color": "ff0000"
},
{
"name": "priority: critical",
"color": "e11d21"
},
{
"name": "priority: major",
"color": "eb6420"
},
{
"name": "priority: normal",
"color": "fbca04"
},
{
"name": "priority: minor",
"color": "207de5"
},
{
"name": "question",
"color": "cc317c"
},
{
"name": "status: in progress",
"color": "bfe5bf"
},
{
"name": "status: in testing",
"color": "d4c5f9"
},
{
"name": "status: needs review",
"color": "fef2c0"
},
{
"name": "status: rejected",
"color": "000000"
},
{
"name": "status: under discussion",
"color": "c7def8"
},
{
"name": "tech debt",
"color": "fad8c7"
},
{
"name": "ticket: created",
"color": "c7def8"
},
{
"name": "ticket: needed",
"color": "fef2c0"
},
{
"name": "help wanted",
"color": "128A0C"
},
{
"name": "wontfix",
"color": "ffffff"
}
].forEach(function(label) {
addLabel(label)
});