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) { if (hasEvaled || plugin?.stylesheets) {
loadedPluginMap[id] = plugin; loadedPluginMap[id] = plugin;
if (plugin?.stylesheets) if (plugin?.stylesheets) {
document.head.appendChild( const styleSheetList = plugin.stylesheets.map((style) => {
Object.assign(document.createElement('style'), { const styleSheet = new CSSStyleSheet();
id: `plugin-${id}`, styleSheet.replaceSync(style);
innerHTML: plugin?.stylesheets ?? '',
}), return styleSheet;
); });
document.adoptedStyleSheets = [...document.adoptedStyleSheets, ...styleSheetList];
}
if (!hasEvaled) console.log('[YTMusic]', `"${id}" plugin is loaded`); if (!hasEvaled) console.log('[YTMusic]', `"${id}" plugin is loaded`);
} else { } else {