36 lines
937 B
JavaScript
36 lines
937 B
JavaScript
"use strict";
|
|
function extractFontFamilies(text, style) {
|
|
const fontFamily = style.fontFamily;
|
|
const fontFamilies = [];
|
|
const dedupe = {};
|
|
const regex = /font-family:([^;"\s]+)/g;
|
|
const matches = text.match(regex);
|
|
function addFontFamily(fontFamily2) {
|
|
if (!dedupe[fontFamily2]) {
|
|
fontFamilies.push(fontFamily2);
|
|
dedupe[fontFamily2] = true;
|
|
}
|
|
}
|
|
if (Array.isArray(fontFamily)) {
|
|
for (let i = 0; i < fontFamily.length; i++) {
|
|
addFontFamily(fontFamily[i]);
|
|
}
|
|
} else {
|
|
addFontFamily(fontFamily);
|
|
}
|
|
if (matches) {
|
|
matches.forEach((match) => {
|
|
const fontFamily2 = match.split(":")[1].trim();
|
|
addFontFamily(fontFamily2);
|
|
});
|
|
}
|
|
for (const i in style.tagStyles) {
|
|
const fontFamily2 = style.tagStyles[i].fontFamily;
|
|
addFontFamily(fontFamily2);
|
|
}
|
|
return fontFamilies;
|
|
}
|
|
|
|
export { extractFontFamilies };
|
|
//# sourceMappingURL=extractFontFamilies.mjs.map
|