Sfoglia il codice sorgente

ref: replace insertAfter and insertBefore with native method

Sv443 11 mesi fa
parent
commit
d3fa0b8f1f
3 ha cambiato i file con 8 aggiunte e 17 eliminazioni
  1. 5 5
      src/features/layout.ts
  2. 3 3
      src/features/lyrics.ts
  3. 0 9
      src/utils/dom.ts

+ 5 - 5
src/features/layout.ts

@@ -1,8 +1,8 @@
-import { addParent, autoPlural, debounce, fetchAdvanced, insertAfter, pauseFor } from "@sv443-network/userutils";
+import { addParent, autoPlural, debounce, fetchAdvanced, pauseFor } from "@sv443-network/userutils";
 import { getFeatures } from "../config";
 import { siteEvents } from "../siteEvents";
 import { addSelectorListener } from "../observers";
-import { error, getResourceUrl, log, warn, t, onInteraction, openInTab, getBestThumbnailUrl, getDomain, addStyle, currentMediaType, domLoaded, waitVideoElementReady, getVideoTime, insertBefore, fetchCss, addStyleFromResource } from "../utils";
+import { error, getResourceUrl, log, warn, t, onInteraction, openInTab, getBestThumbnailUrl, getDomain, addStyle, currentMediaType, domLoaded, waitVideoElementReady, getVideoTime, fetchCss, addStyleFromResource } from "../utils";
 import { scriptInfo } from "../constants";
 import { openCfgMenu } from "../menu/menu_old";
 import { createCircularBtn } from "../components";
@@ -37,7 +37,7 @@ export async function addWatermark() {
   onInteraction(watermark, watermarkOpenMenu);
 
   addSelectorListener("navBar", "ytmusic-nav-bar #left-content", {
-    listener: (logoElem) => insertAfter(logoElem, watermark),
+    listener: (logoElem) => logoElem.insertAdjacentElement("afterend", watermark),
   });
 
   log("Added watermark element");
@@ -462,7 +462,7 @@ export async function initAboveQueueBtns() {
           wrapperElem.appendChild(btnElem);
         }
 
-        insertBefore(rightBtnsEl, wrapperElem);
+        rightBtnsEl.insertAdjacentElement("beforebegin", wrapperElem);
       }
     },
   });
@@ -609,7 +609,7 @@ export async function initThumbnailOverlay() {
         toggleBtnElem.appendChild(imgElem);
     
         addSelectorListener("playerBarMiddleButtons", "ytmusic-like-button-renderer#like-button-renderer", {
-          listener: (likeContainer) => insertAfter(likeContainer, toggleBtnElem),
+          listener: (likeContainer) => likeContainer.insertAdjacentElement("afterend", toggleBtnElem),
         });
       }
 

+ 3 - 3
src/features/lyrics.ts

@@ -1,4 +1,4 @@
-import { autoPlural, fetchAdvanced, insertAfter } from "@sv443-network/userutils";
+import { autoPlural, fetchAdvanced } from "@sv443-network/userutils";
 import Fuse from "fuse.js";
 import { error, getResourceUrl, info, log, warn, t, tp, currentMediaType, constructUrl } from "../utils";
 import { emitInterface } from "../interface";
@@ -39,9 +39,9 @@ async function addActualMediaCtrlLyricsBtn(likeContainer: HTMLElement) {
     const thumbToggleElem = document.querySelector<HTMLElement>("#bytm-thumbnail-overlay-toggle");
 
     if(thumbToggleElem)
-      insertAfter(thumbToggleElem, lyricsBtnElem);
+      thumbToggleElem.insertAdjacentElement("afterend", lyricsBtnElem);
     else
-      insertAfter(likeContainer, lyricsBtnElem);
+      likeContainer.insertAdjacentElement("afterend", lyricsBtnElem);
   })();
 
   currentSongTitle = songTitleElem.title;

+ 0 - 9
src/utils/dom.ts

@@ -196,15 +196,6 @@ export function currentMediaType(): "video" | "song" {
   return getUnsafeWindow().getComputedStyle(songImgElem).display !== "none" ? "song" : "video";
 }
 
-/**
- * Inserts {@linkcode beforeElement} as a sibling just before the provided {@linkcode afterElement}
- * @returns Returns the {@linkcode beforeElement}
- */
-export function insertBefore(afterElement: Element, beforeElement: Element) {
-  afterElement.parentNode?.insertBefore(beforeElement, afterElement);
-  return beforeElement;
-}
-
 /** Adds a global style element with the contents of the specified CSS resource */
 export async function addStyleFromResource(key: ResourceKey & `css-${string}`) {
   const css = await fetchCss(key);