Compare commits

...

2 commits

Author SHA1 Message Date
af872d538c
Fix lint
All checks were successful
Code quality checks / biome (push) Successful in 8s
2025-04-27 17:58:20 -04:00
6212f47084
add spotify button based on sync id 2025-04-27 17:57:53 -04:00

View file

@ -167,14 +167,11 @@ function buildActivityHTML(activity) {
: ""; : "";
const activityButtons = const activityButtons =
activity.buttons && activity.buttons.length > 0 (activity.buttons && activity.buttons.length > 0
? `<div class="activity-buttons"> ? `<div class="activity-buttons">
${activity.buttons ${activity.buttons
.map((button, index) => { .map((button, index) => {
const label = const label = typeof button === "string" ? button : button.label;
typeof button === "string"
? button
: button.label;
let url = null; let url = null;
if (typeof button === "object" && button.url) { if (typeof button === "object" && button.url) {
url = button.url; url = button.url;
@ -188,7 +185,12 @@ function buildActivityHTML(activity) {
.filter(Boolean) .filter(Boolean)
.join("")} .join("")}
</div>` </div>`
: ""; : "") +
(activity.name === "Spotify" && activity.sync_id
? `<div class="activity-buttons">
<a href="https://open.spotify.com/track/${activity.sync_id}" class="activity-button" target="_blank" rel="noopener noreferrer">Listen on Spotify</a>
</div>`
: "");
const progressBar = const progressBar =
progress !== null progress !== null
@ -321,9 +323,7 @@ async function populateReadme(data) {
if (readmeSection && data.kv?.readme) { if (readmeSection && data.kv?.readme) {
const url = data.kv.readme; const url = data.kv.readme;
try { try {
const res = await fetch( const res = await fetch(`/api/readme?url=${encodeURIComponent(url)}`);
`/api/readme?url=${encodeURIComponent(url)}`,
);
if (!res.ok) throw new Error("Failed to fetch readme"); if (!res.ok) throw new Error("Failed to fetch readme");
const text = await res.text(); const text = await res.text();
@ -343,9 +343,7 @@ async function updatePresence(data) {
const cssLink = data.kv?.css; const cssLink = data.kv?.css;
if (cssLink) { if (cssLink) {
try { try {
const res = await fetch( const res = await fetch(`/api/css?url=${encodeURIComponent(cssLink)}`);
`/api/css?url=${encodeURIComponent(cssLink)}`,
);
if (!res.ok) throw new Error("Failed to fetch CSS"); if (!res.ok) throw new Error("Failed to fetch CSS");
const cssText = await res.text(); const cssText = await res.text();