if (typeof document === "undefined") return;
var createStylesheet = function (
chunkId, fullhref, oldTag, resolve, reject
) {
<%- _create_link %>
var onLinkComplete = function (event) {
// avoid mem leaks.
linkTag.onerror = linkTag.onload = null;
if (event.type === 'load') {
resolve();
} else {
var errorType = event && (event.type === 'load' ? 'missing' : event.type);
var realHref = event && event.target && event.target.href || fullhref;
var err = new Error("Loading CSS chunk " + chunkId + " failed.\\n(" + realHref + ")");
err.code = "CSS_CHUNK_LOAD_FAILED";
err.type = errorType;
err.request = realHref;
if (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)
reject(err);
}
}
linkTag.onerror = linkTag.onload = onLinkComplete;
<%- _insert %>
return linkTag;
}
var findStylesheet = function (href, fullhref) {
var existingLinkTags = document.getElementsByTagName("link");
for (var i = 0; i < existingLinkTags.length; i++) {
var tag = existingLinkTags[i];
var dataHref = tag.getAttribute("data-href") || tag.getAttribute("href");
if (dataHref) {
dataHref = dataHref.split('?')[0]
}
if (tag.rel === "stylesheet" && (dataHref === href || dataHref === fullhref)) return tag;
}
var existingStyleTags = document.getElementsByTagName("style");
for (var i = 0; i < existingStyleTags.length; i++) {
var tag = existingStyleTags[i];
var dataHref = tag.getAttribute("data-href");
if (dataHref === href || dataHref === fullhref) return tag;
}
}
var loadStylesheet = function (chunkId) {
return new Promise(function (resolve, reject) {
var href = <%- REQUIRE %>.miniCssF(chunkId);
var fullhref = <%- PUBLIC_PATH %> + href;
if (findStylesheet(href, fullhref)) return resolve();
createStylesheet(chunkId, fullhref, null, resolve, reject);
})
}