gfonts-js-library/dist/metadata.js

26 lines
819 B
JavaScript
Raw Normal View History

2023-05-20 19:39:06 +00:00
import { parse } from "pb-parser";
import { base_url } from "./utils";
async function font_metadata_folder(folder, font, mirror) {
let url = base_url(mirror, folder, font) + "/METADATA.pb";
try {
let response = await (await fetch(url));
if (response.ok) {
return [url, await response.text()];
}
return null;
}
catch (e) {
return null;
}
}
export async function retrieve_font_metadata(font, mirror) {
let fontname = font.replace(" ", "").toLowerCase();
let [url, raw_metadata] = (await font_metadata_folder("ofl", fontname, mirror))
|| (await font_metadata_folder("ufl", fontname, mirror))
|| (await font_metadata_folder("apache", fontname, mirror));
return {
url,
metadata: parse(raw_metadata)
};
}