list of sponsors + fixes

- added list of sponsors, if you host an instance, it can be enabled with showSponsors.
- fixed download button thickness on ios.
- about button now opens about tab when no new changelog is available.
This commit is contained in:
wukko
2023-10-12 17:33:26 +06:00
parent 6c314a1a62
commit a57ee53b21
15 changed files with 101 additions and 32 deletions

View File

@@ -1,5 +1,6 @@
import { authorInfo, celebrations } from "../config.js";
import { authorInfo, celebrations, sponsors } from "../config.js";
import emoji from "../emoji.js";
import { loadFile } from "../sub/loadFromFs.js";
export const backButtonSVG = `<svg width="22" height="22" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.1905 28.5L2 16L14.1905 3.5L16.2857 5.62054L7.65986 14.4654H30V17.5346H7.65986L16.2857 26.3516L14.1905 28.5Z" fill="#E1E1E1"/>
@@ -255,3 +256,21 @@ export function webLoc(t, arr) {
}
return `{${base}};`
}
export function sponsoredList() {
let base = ``;
let altText = ``
for (let i = 0; i < sponsors.length; i++) {
let s = sponsors[i];
let loadedLogo = loadFile(`./src/front/sponsors/${s.name}.svg`);
altText += `${s.fullName ? s.fullName : s.name}, `;
base +=
`<a class="sponsored-logo ${s.name}"
href="${s.url}" target="_blank"
style="width: calc(${s.logo.width}px / ${s.logo.scale}); height: calc(${s.logo.height}px / ${s.logo.scale});">
${loadedLogo}
</a>`
}
return `<div id="sponsored-logos" aria-label="${altText.slice(0, -2)}">${base}</div>`
}

View File

@@ -1,4 +1,4 @@
import { checkbox, collapsibleList, explanation, footerButtons, multiPagePopup, popup, popupWithBottomButtons, sep, settingsCategory, switcher, socialLink, socialLinks, urgentNotice, keyboardShortcuts, webLoc } from "./elements.js";
import { checkbox, collapsibleList, explanation, footerButtons, multiPagePopup, popup, popupWithBottomButtons, sep, settingsCategory, switcher, socialLink, socialLinks, urgentNotice, keyboardShortcuts, webLoc, sponsoredList } from "./elements.js";
import { services as s, authorInfo, version, repo, donations, supportedAudio } from "../config.js";
import { getCommitInfo } from "../sub/currentCommit.js";
import loc from "../../localization/manager.js";
@@ -164,7 +164,17 @@ export default function(obj) {
title: `${emoji("📑")} ${t("CollapseLegal")}`,
body: t("FairUse")
}])
}]
},
...(process.env.showSponsors ?
[{
text: t("SponsoredBy"),
classes: ["sponsored-by-text"],
nopadding: true
}, {
text: sponsoredList(),
raw: true
}] : []
)]
})
}, {
name: "changelog",