|
|
@@ -886,6 +886,7 @@ this.SingleFileCore = this.SingleFileCore || (() => {
|
|
|
const PREFIX_DATA_URI_IMAGE_SVG = "data:image/svg+xml";
|
|
|
const PREFIX_DATA_URI_NO_MIMETYPE = "data:;";
|
|
|
const PREFIX_DATA_URI_OCTET_STREAM = /^data:(application|binary)\/octet-stream/;
|
|
|
+ const PREFIX_DATA_URI_VND = "data:application/vnd.";
|
|
|
const SINGLE_FILE_VARIABLE_NAME_PREFIX = "--sf-img-";
|
|
|
|
|
|
class DomProcessorHelper {
|
|
|
@@ -1082,12 +1083,9 @@ this.SingleFileCore = this.SingleFileCore || (() => {
|
|
|
const resourceURL = DomUtil.normalizeURL(originalResourceURL);
|
|
|
if (!DomUtil.testIgnoredPath(resourceURL)) {
|
|
|
if (DomUtil.testValidURL(resourceURL, baseURI, options.url)) {
|
|
|
- let { content, indexResource, duplicate } = await batchRequest.addURL(resourceURL);
|
|
|
- if (processFont) {
|
|
|
- const validFont = await DOM.validFont(content);
|
|
|
- if (!validFont) {
|
|
|
- content = EMPTY_DATA_URI;
|
|
|
- }
|
|
|
+ let [{ content, indexResource, duplicate }, validResource] = await Promise.all([batchRequest.addURL(resourceURL), !processFont || DOM.validFont(resourceURL)]);
|
|
|
+ if (processFont && !content.startsWith(PREFIX_DATA_URI_VND) && !validResource) {
|
|
|
+ content = EMPTY_DATA_URI;
|
|
|
}
|
|
|
let regExpUrlFunction = DomUtil.getRegExp(urlFunction);
|
|
|
if (!stylesheetContent.match(regExpUrlFunction)) {
|