Skip to content

Commit 6810f8c

Browse files
committed
refactor(css): consolidate duplicate styles and migrate to BEM naming convention
1 parent cdbc7eb commit 6810f8c

File tree

1 file changed

+41
-48
lines changed

1 file changed

+41
-48
lines changed

liaune/bangumi_related_subject_enhance.user.js

Lines changed: 41 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@
99
// ==/UserScript==
1010
(function () {
1111
GM_addStyle(`
12-
.relate_rank{
13-
padding: 2px 5px 1px 5px;
14-
background: #b4b020;
12+
.rank-badge {
13+
padding: 2px 5px;
1514
color: #FFF;
1615
-webkit-box-shadow: 0 1px 2px #EEE,inset 0 1px 1px #FFF;
1716
-moz-box-shadow: 0 1px 2px #EEE,inset 0 1px 1px #FFF;
@@ -23,48 +22,35 @@ position: relative;
2322
top: -12px;
2423
display: inline-block;
2524
}
26-
.relate_rank_1{
27-
padding: 2px 5px 1px 5px;
25+
.rank-badge--high {
2826
background: #15d7b3;
29-
color: #FFF;
30-
-webkit-box-shadow: 0 1px 2px #EEE,inset 0 1px 1px #FFF;
31-
-moz-box-shadow: 0 1px 2px #EEE,inset 0 1px 1px #FFF;
32-
box-shadow: 0 1px 2px #EEE,inset 0 1px 1px #FFF;
33-
-moz-border-radius: 4px;
34-
-webkit-border-radius: 4px;
35-
border-radius: 4px;
36-
position: relative;
37-
top: -12px;
38-
display: inline-block;
3927
}
40-
.relate_wish{
41-
border: 2px solid #fd59a9;
42-
border-radius: 4px;
43-
box-sizing: border-box;
28+
.rank-badge--normal {
29+
background: #b4b020;
4430
}
45-
.relate_collect{
46-
border: 2px solid #3838e6;
31+
.collect-status {
32+
border: 2px solid;
4733
border-radius: 4px;
4834
box-sizing: border-box;
4935
}
50-
.relate_do{
51-
border: 2px solid #15d748;
52-
border-radius: 4px;
53-
box-sizing: border-box;
36+
.collect-status--wish {
37+
border-color: #fd59a9;
5438
}
55-
.relate_on_hold{
56-
border: 2px solid #f6af45;
57-
border-radius: 4px;
58-
box-sizing: border-box;
39+
.collect-status--collect {
40+
border-color: #3838e6;
5941
}
60-
.relate_dropped{
61-
border: 2px solid #5a5855;
62-
border-radius: 4px;
63-
box-sizing: border-box;
42+
.collect-status--do {
43+
border-color: #15d748;
44+
}
45+
.collect-status--on-hold {
46+
border-color: #f6af45;
47+
}
48+
.collect-status--dropped {
49+
border-color: #5a5855;
6450
}
6551
66-
.subCheckIn{
67-
display:block;
52+
.collect-toggle {
53+
display: block;
6854
top: -20px;
6955
left: 5px;
7056
opacity: 0.5;
@@ -296,7 +282,7 @@ height: 100%;
296282

297283
if (flag) {
298284
collectStatus[ID] = "collect";
299-
avatarNeue.classList.add("relate_collect");
285+
avatarNeue.classList.add("collect-status", "collect-status--collect");
300286
fetch(`/subject/${ID}/interest/update?gh=${securitycode}`, {
301287
method: "POST",
302288
body: new URLSearchParams({
@@ -306,7 +292,10 @@ height: 100%;
306292
});
307293
} else {
308294
delete collectStatus[ID];
309-
avatarNeue.classList.remove("relate_collect");
295+
avatarNeue.classList.remove(
296+
"collect-status",
297+
"collect-status--collect"
298+
);
310299
fetch(`/subject/${ID}/remove?gh=${securitycode}`, {
311300
method: "POST",
312301
});
@@ -341,19 +330,19 @@ height: 100%;
341330
}
342331

343332
function showCheckIn(elem, ID) {
344-
if (elem.querySelector("a.subCheckIn")) {
333+
if (elem.querySelector("a.collect-toggle")) {
345334
return;
346335
}
347336

348-
let checkIn = createElement("a", "subCheckIn", "javascript:;");
337+
let checkIn = createElement("a", "collect-toggle", "javascript:;");
349338
let flag = collectStatus[ID] === "collect" ? 1 : 0;
350339
let avatarNeue = elem.querySelector("span.avatarNeue");
351340
checkIn.addEventListener("click", function () {
352341
flag = flag == 1 ? 0 : 1;
353342
if (flag) {
354343
checkIn.style.backgroundPosition = "bottom left";
355344
collectStatus[ID] = "collect";
356-
avatarNeue.classList.add("relate_collect");
345+
avatarNeue.classList.add("collect-status", "collect-status--collect");
357346
fetch(`/subject/${ID}/interest/update?gh=${securitycode}`, {
358347
method: "POST",
359348
body: new URLSearchParams({
@@ -364,7 +353,10 @@ height: 100%;
364353
} else {
365354
checkIn.style.backgroundPosition = "top left";
366355
delete collectStatus[ID];
367-
avatarNeue.classList.remove("relate_collect");
356+
avatarNeue.classList.remove(
357+
"collect-status",
358+
"collect-status--collect"
359+
);
368360
fetch(`/subject/${ID}/remove?gh=${securitycode}`, {
369361
method: "POST",
370362
});
@@ -501,15 +493,15 @@ height: 100%;
501493
function displayCollect(interest, elem) {
502494
let avatarNeue = elem.querySelector("span.avatarNeue");
503495
if (interest == "wish") {
504-
avatarNeue.classList.add("relate_wish");
496+
avatarNeue.classList.add("collect-status", "collect-status--wish");
505497
} else if (interest == "collect") {
506-
avatarNeue.classList.add("relate_collect");
498+
avatarNeue.classList.add("collect-status", "collect-status--collect");
507499
} else if (interest == "do") {
508-
avatarNeue.classList.add("relate_do");
500+
avatarNeue.classList.add("collect-status", "collect-status--do");
509501
} else if (interest == "on_hold") {
510-
avatarNeue.classList.add("relate_on_hold");
502+
avatarNeue.classList.add("collect-status", "collect-status--on-hold");
511503
} else if (interest == "dropped") {
512-
avatarNeue.classList.add("relate_dropped");
504+
avatarNeue.classList.add("collect-status", "collect-status--dropped");
513505
}
514506
count1++;
515507
}
@@ -575,10 +567,11 @@ height: 100%;
575567
function displayRank(rank, elem) {
576568
let rankSp = createElement("span", "rank");
577569
if (rank) {
570+
rankSp.classList.add("rank-badge");
578571
if (rank <= 1500) {
579-
rankSp.classList.add("relate_rank_1");
572+
rankSp.classList.add("rank-badge--high");
580573
} else {
581-
rankSp.classList.add("relate_rank");
574+
rankSp.classList.add("rank-badge--normal");
582575
}
583576
rankSp.innerHTML = `<small>Rank </small>${rank}`;
584577
const subjectLink = [...elem.querySelectorAll('a[href^="/subject/"]')].at(

0 commit comments

Comments
 (0)