27 lines
547 B
JavaScript
27 lines
547 B
JavaScript
import { readFileSync } from "node:fs";
|
|
import { fontace } from "fontace";
|
|
function createFontaceFontFileReader({
|
|
errorHandler
|
|
}) {
|
|
return {
|
|
extract({ family, url }) {
|
|
try {
|
|
const data = fontace(readFileSync(url));
|
|
return {
|
|
weight: data.weight,
|
|
style: data.style
|
|
};
|
|
} catch (cause) {
|
|
throw errorHandler.handle({
|
|
type: "cannot-extract-data",
|
|
data: { family, url },
|
|
cause
|
|
});
|
|
}
|
|
}
|
|
};
|
|
}
|
|
export {
|
|
createFontaceFontFileReader
|
|
};
|