Styles: Fix updating styles, remove redundant abstraction

This commit is contained in:
Sqaaakoi 2025-01-20 07:39:35 +13:00
parent bf684366e7
commit b49bc23992
No known key found for this signature in database

View file

@ -91,8 +91,7 @@ export function setStyle(style: Style) {
if (!styleMap.has(style.name)) styleMap.set(style.name, style); if (!styleMap.has(style.name)) styleMap.set(style.name, style);
const storedStyle = requireStyle(style.name); const storedStyle = requireStyle(style.name);
Object.assign(storedStyle, style); Object.assign(storedStyle, style);
compileStyle(style);
(style.enabled ? enableStyle : disableStyle)(storedStyle);
} }
/** /**
@ -170,12 +169,13 @@ export const setStyleClassNames = (style: Style | string, classNames: Record<str
* @see {@link setStyleClassNames} for more info on style classnames * @see {@link setStyleClassNames} for more info on style classnames
*/ */
export function updateStyleInDocument(style: Style, doc: Document) { export function updateStyleInDocument(style: Style, doc: Document) {
let styleElement = [...doc.head.querySelectorAll<HTMLStyleElement>("style[data-vencord-name]")].find(e => e.dataset.vencordName === style.name); const parent = doc.documentElement;
let styleElement = [...parent.querySelectorAll<HTMLStyleElement>("style[data-vencord-name]")].find(e => e.dataset.vencordName === style.name);
if (style.enabled) { if (style.enabled) {
if (!styleElement) { if (!styleElement) {
styleElement = doc.createElement("style"); styleElement = doc.createElement("style");
styleElement.dataset.vencordName = style.name; styleElement.dataset.vencordName = style.name;
doc.documentElement.appendChild(styleElement); parent.appendChild(styleElement);
} }
styleElement.textContent = style.edit ? style.edit(style.source) : style.source; styleElement.textContent = style.edit ? style.edit(style.source) : style.source;
} else styleElement?.remove(); } else styleElement?.remove();