mirror of
https://github.com/zen-browser/www.git
synced 2025-07-07 17:05:32 +02:00
This commit adds the Biome formatter and linter to replace Prettier, including: - Add biome.json config file - Add pre-commit hook with Husky - Configure GitHub Action to run Biome checks - Apply Biome formatting rules to codebase - Remove Prettier dependencies
27 lines
974 B
TypeScript
27 lines
974 B
TypeScript
/**
|
|
* Fetches the latest release notes from GitHub and parses the SHA-256 checksums.
|
|
* Returns a mapping from filename to checksum.
|
|
*/
|
|
export async function getChecksums() {
|
|
const res = await fetch("https://api.github.com/repos/zen-browser/desktop/releases/latest", {
|
|
headers: {
|
|
Accept: "application/vnd.github+json",
|
|
"X-GitHub-Api-Version": "2022-11-28",
|
|
"User-Agent": "zen-browser-checksum-fetcher",
|
|
},
|
|
});
|
|
if (!res.ok) throw new Error(`Failed to fetch GitHub release: ${res.statusText}`);
|
|
const data = await res.json();
|
|
const body = data.body as string;
|
|
|
|
// Extract the checksum block
|
|
const match = body.match(/File Checksums \(SHA-256\)[\s\S]*?```([\s\S]*?)```/);
|
|
const checksums: Record<string, string> = {};
|
|
if (match?.[1]) {
|
|
for (const line of match[1].split("\n")) {
|
|
const [hash, filename] = line.trim().split(/\s+/, 2);
|
|
if (hash && filename) checksums[filename] = hash;
|
|
}
|
|
}
|
|
return checksums;
|
|
}
|