Skip to content

Commit c784ee3

Browse files
authored
refactor: use shields.io built-in JSR logo for badges (#487)
The JSR logo has been added to Simple Icons since simple-icons/simple-icons#10794. I used the `logoSize` parameter to make the logo fit the badge. The feature was introduced at badges/shields#9191. Currently, we can't use `logoSize` in the response due to badges/shields#10132. So I passed these parameters with search parameters instead.
1 parent 7e28877 commit c784ee3

File tree

3 files changed

+9
-15
lines changed

3 files changed

+9
-15
lines changed

frontend/routes/badges/package.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,9 @@ export const handler: Handlers<unknown, State> = {
2525
return Response.json({
2626
schemaVersion: 1,
2727
label: "",
28-
// namedLogo: "jsr", TODO: add icon to shields.io or simple-icons. temporary solution below.
29-
logoSvg: await Deno.readTextFile(
30-
new URL("../../static/logo.svg", import.meta.url),
31-
),
3228
message: packageResp.data.latestVersion,
3329
labelColor: "rgb(247,223,30)",
3430
color: "rgb(8,51,68)",
35-
logoWidth: "25",
3631
});
3732
}
3833
} else {
@@ -42,6 +37,9 @@ export const handler: Handlers<unknown, State> = {
4237
const shieldsUrl = new URL("https://img.shields.io/endpoint");
4338
shieldsUrl.search = url.search;
4439
shieldsUrl.searchParams.set("url", url.href);
40+
shieldsUrl.searchParams.set("logo", "jsr");
41+
shieldsUrl.searchParams.set("logoColor", "rgb(8,51,68)");
42+
shieldsUrl.searchParams.set("logoSize", "auto");
4543

4644
const res = await fetch(shieldsUrl);
4745

frontend/routes/badges/package_score.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,9 @@ export const handler: Handlers<unknown, State> = {
2929
return Response.json({
3030
schemaVersion: 1,
3131
label: "",
32-
// namedLogo: "jsr", TODO: add icon to shields.io or simple-icons. temporary solution below.
33-
logoSvg: await Deno.readTextFile(
34-
new URL("../../static/logo.svg", import.meta.url),
35-
),
3632
message: `${packageResp.data.score}%`,
3733
labelColor: "rgb(247,223,30)",
3834
color: "rgb(8,51,68)",
39-
logoWidth: "25",
4035
});
4136
}
4237
} else {
@@ -46,6 +41,9 @@ export const handler: Handlers<unknown, State> = {
4641
const shieldsUrl = new URL("https://img.shields.io/endpoint");
4742
shieldsUrl.search = url.search;
4843
shieldsUrl.searchParams.set("url", url.href);
44+
shieldsUrl.searchParams.set("logo", "jsr");
45+
shieldsUrl.searchParams.set("logoColor", "rgb(8,51,68)");
46+
shieldsUrl.searchParams.set("logoSize", "auto");
4947

5048
const res = await fetch(shieldsUrl);
5149

frontend/routes/badges/scope.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,9 @@ export const handler: Handlers<unknown, State> = {
2525
return Response.json({
2626
schemaVersion: 1,
2727
label: "",
28-
// namedLogo: "jsr", TODO: add icon to shields.io or simple-icons. temporary solution below.
29-
logoSvg: await Deno.readTextFile(
30-
new URL("../../static/logo.svg", import.meta.url),
31-
),
3228
message: `@${scopeResp.data.scope}`,
3329
labelColor: "rgb(247,223,30)",
3430
color: "rgb(8,51,68)",
35-
logoWidth: "25",
3631
});
3732
}
3833
} else {
@@ -42,6 +37,9 @@ export const handler: Handlers<unknown, State> = {
4237
const shieldsUrl = new URL("https://img.shields.io/endpoint");
4338
shieldsUrl.search = url.search;
4439
shieldsUrl.searchParams.set("url", url.href);
40+
shieldsUrl.searchParams.set("logo", "jsr");
41+
shieldsUrl.searchParams.set("logoColor", "rgb(8,51,68)");
42+
shieldsUrl.searchParams.set("logoSize", "auto");
4543

4644
const res = await fetch(shieldsUrl);
4745

0 commit comments

Comments
 (0)