var dataRspackPrefix = <%- _data_rspack_prefix %>;
function getDataRspackId(identifier) {
return dataRspackPrefix + identifier;
}
function applyStyle(styleElement, css) {
styleElement.textContent = css;
}
function removeStyleElement(styleElement) {
if (styleElement.parentNode) {
styleElement.parentNode.removeChild(styleElement);
}
}
function findStyleElement(identifier) {
var elements = document.getElementsByTagName("style");
for (var i = 0; i < elements.length; i++) {
var el = elements[i];
if (el.getAttribute("data-rspack") == getDataRspackId(identifier)) {
return el;
}
}
return null;
}
function insertStyleElement(key) {
<%- _create_style %>
document.head.appendChild(style);
return style;
}
<%- define(CSS_INJECT_STYLE) %> = <%- basicFunction("identifier, css") %> {
var element = findStyleElement(identifier);
if (element) {
applyStyle(element, css);
} else {
var element = insertStyleElement(identifier);
applyStyle(element, css);
}
};
<%- weak(CSS_INJECT_STYLE) %>.removeModules = <%- basicFunction("removedModules") %> {
if (!removedModules) return;
var identifiers = Array.isArray(removedModules) ? removedModules : [removedModules];
for (var i = 0; i < identifiers.length; i++) {
var identifier = identifiers[i];
var element = findStyleElement(identifier);
if (element) {
removeStyleElement(element);
}
}
};
<% if (_with_hmr) { %>
<%- weak(HMR_DOWNLOAD_UPDATE_HANDLERS) %>.cssInjectStyle = <%- basicFunction("chunkIds, removedChunks, removedModules, promises, applyHandlers, updatedModulesList, css") %> {
if (removedModules) {
<%- weak(CSS_INJECT_STYLE) %>.removeModules(removedModules);
}
};
<% } else { %>
// no css inject style HMR download handler
<% } %>