mirror of
https://github.com/monkeytypegame/monkeytype.git
synced 2025-11-10 22:22:21 +08:00
only filling releases elements when opening popup
clearing dom element after closing the popup only requesting one release when setting footer version name only requesting 5 releases updated releases api url
This commit is contained in:
parent
c9d357cf82
commit
f09d4bb50f
4 changed files with 45 additions and 23 deletions
|
|
@ -1113,6 +1113,13 @@
|
|||
@extend .ffscroll;
|
||||
overflow-y: scroll;
|
||||
|
||||
.preloader {
|
||||
color: var(--main-color);
|
||||
display: grid;
|
||||
place-content: center center;
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.tip {
|
||||
text-align: center;
|
||||
color: var(--sub-color);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,29 @@
|
|||
import format from "date-fns/format";
|
||||
import { getReleasesFromGitHub } from "../utils/misc";
|
||||
|
||||
export function show(): void {
|
||||
$("#versionHistory").html(`
|
||||
<div class="preloader">
|
||||
<i class="fas fa-fw fa-spin fa-circle-notch"></i>
|
||||
</div
|
||||
`);
|
||||
getReleasesFromGitHub().then((releases) => {
|
||||
$("#versionHistory").html(`<div class="releases"></div`);
|
||||
releases.forEach((release: MonkeyTypes.GithubRelease) => {
|
||||
if (!release.draft && !release.prerelease) {
|
||||
$("#versionHistory .releases").append(`
|
||||
<div class="release">
|
||||
<div class="title">${release.name}</div>
|
||||
<div class="date">${format(
|
||||
new Date(release.published_at),
|
||||
"dd MMM yyyy"
|
||||
)}</div>
|
||||
<div class="body">${release.body.replace(/\r\n/g, "<br>")}</div>
|
||||
</div>
|
||||
`);
|
||||
}
|
||||
});
|
||||
});
|
||||
$("#versionHistoryWrapper")
|
||||
.css("opacity", 0)
|
||||
.removeClass("hidden")
|
||||
|
|
@ -11,6 +36,7 @@ function hide(): void {
|
|||
.css("opacity", 1)
|
||||
.animate({ opacity: 0 }, 125, () => {
|
||||
$("#versionHistoryWrapper").addClass("hidden");
|
||||
$("#versionHistory").html("");
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,8 +18,10 @@ if (window.location.hostname === "localhost") {
|
|||
`<a class='button configureAPI' href='http://localhost:5005/configure/' target='_blank' aria-label="Configure API" data-balloon-pos="right"><i class="fas fa-fw fa-server"></i></a>`
|
||||
);
|
||||
} else {
|
||||
Misc.getReleasesFromGitHub().then((v) => {
|
||||
NewVersionNotification.show(v[0].name);
|
||||
Misc.getLatestReleaseFromGitHub().then((v) => {
|
||||
$("#bottom .version .text").text(v);
|
||||
$("#bottom .version").css("opacity", 1);
|
||||
NewVersionNotification.show(v);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import * as Loader from "../elements/loader";
|
||||
import format from "date-fns/format";
|
||||
|
||||
function hexToHSL(hex: string): {
|
||||
hue: number;
|
||||
|
|
@ -344,30 +343,18 @@ export function median(arr: number[]): number {
|
|||
}
|
||||
}
|
||||
|
||||
export async function getLatestReleaseFromGitHub(): Promise<string> {
|
||||
const releases = await $.getJSON(
|
||||
"https://api.github.com/repos/monkeytypegame/monkeytype/releases?per_page=1"
|
||||
);
|
||||
return releases[0].name;
|
||||
}
|
||||
|
||||
export async function getReleasesFromGitHub(): Promise<
|
||||
MonkeyTypes.GithubRelease[]
|
||||
> {
|
||||
return $.getJSON(
|
||||
"https://api.github.com/repos/Miodec/monkeytype/releases",
|
||||
(data) => {
|
||||
$("#bottom .version .text").text(data[0].name);
|
||||
$("#bottom .version").css("opacity", 1);
|
||||
$("#versionHistory .releases").empty();
|
||||
data.forEach((release: MonkeyTypes.GithubRelease) => {
|
||||
if (!release.draft && !release.prerelease) {
|
||||
$("#versionHistory .releases").append(`
|
||||
<div class="release">
|
||||
<div class="title">${release.name}</div>
|
||||
<div class="date">${format(
|
||||
new Date(release.published_at),
|
||||
"dd MMM yyyy"
|
||||
)}</div>
|
||||
<div class="body">${release.body.replace(/\r\n/g, "<br>")}</div>
|
||||
</div>
|
||||
`);
|
||||
}
|
||||
});
|
||||
}
|
||||
"https://api.github.com/repos/monkeytypegame/monkeytype/releases?per_page=5"
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue