fix: inject multiple stylesheet

This commit is contained in:
JellyBrick
2023-11-26 23:25:38 +09:00
parent e12e67af0e
commit 3f8030a9c5

View File

@ -56,13 +56,16 @@ export const forceLoadRendererPlugin = (id: string) => {
if (hasEvaled || plugin?.stylesheets) {
loadedPluginMap[id] = plugin;
if (plugin?.stylesheets)
document.head.appendChild(
Object.assign(document.createElement('style'), {
id: `plugin-${id}`,
innerHTML: plugin?.stylesheets ?? '',
}),
);
if (plugin?.stylesheets) {
const styleSheetList = plugin.stylesheets.map((style) => {
const styleSheet = new CSSStyleSheet();
styleSheet.replaceSync(style);
return styleSheet;
});
document.adoptedStyleSheets = [...document.adoptedStyleSheets, ...styleSheetList];
}
if (!hasEvaled) console.log('[YTMusic]', `"${id}" plugin is loaded`);
} else {