import { getButtons } from "./buttons"; import { extConfig, isMobile, isLikesDisabled, isNewDesign, isShorts } from "./state"; import { cLog, getColorFromTheme } from "./utils"; function createRateBar(likes, dislikes) { if (!isLikesDisabled()) { let rateBar = document.getElementById("ryd-bar-container"); const widthPx = getButtons().children[0].clientWidth + getButtons().children[1].clientWidth + 8; const widthPercent = likes + dislikes > 0 ? (likes / (likes + dislikes)) * 100 : 50; var likePercentage = parseFloat(widthPercent.toFixed(1)); const dislikePercentage = (100 - likePercentage).toLocaleString(); likePercentage = likePercentage.toLocaleString(); if (extConfig.showTooltipPercentage) { var tooltipInnerHTML; switch (extConfig.tooltipPercentageMode) { case "dash_dislike": tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()} - ${dislikePercentage}%` break; case "both": tooltipInnerHTML = `${likePercentage}% / ${dislikePercentage}%` break; case "only_like": tooltipInnerHTML = `${likePercentage}%` break; case "only_dislike": tooltipInnerHTML = `${dislikePercentage}%` break; default: // dash_like tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()} - ${likePercentage}%` } } else { tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}` } if (!isShorts()) { if (!rateBar && !isMobile()) { let colorLikeStyle = ""; let colorDislikeStyle = ""; if (extConfig.coloredBar) { colorLikeStyle = "; background-color: " + getColorFromTheme(true); colorDislikeStyle = "; background-color: " + getColorFromTheme(false); } ( document.getElementById(isNewDesign() ? "actions-inner" : "menu-container") || document.querySelector("ytm-slim-video-action-bar-renderer") ).insertAdjacentHTML( "beforeend", `