mirror of
https://github.com/Alvin-Zilverstand/return-youtube-dislike.git
synced 2026-10-28 07:40:27 +01:00
62 lines
1.6 KiB
JavaScript
62 lines
1.6 KiB
JavaScript
import {
|
|
getButtons,
|
|
getLikeButton,
|
|
getDislikeButton,
|
|
checkForSignInButton,
|
|
} from "./src/buttons";
|
|
import {
|
|
isMobile,
|
|
isVideoDisliked,
|
|
isVideoLiked,
|
|
getState,
|
|
setState,
|
|
setInitialState,
|
|
setLikes,
|
|
setDislikes,
|
|
getLikeCountFromButton,
|
|
LIKED_STATE,
|
|
DISLIKED_STATE,
|
|
NEUTRAL_STATE,
|
|
} from "./src/state";
|
|
import { numberFormat, getBrowser, getVideoId, isVideoLoaded, cLog } from "./src/utils";
|
|
import { createRateBar } from "./src/bar";
|
|
import { sendVideoIds, sendVote, likeClicked, dislikeClicked } from "./src/events"
|
|
|
|
let storedData = {
|
|
likes: 0,
|
|
dislikes: 0,
|
|
previousState: NEUTRAL_STATE,
|
|
};
|
|
|
|
let jsInitChecktimer = null;
|
|
|
|
function setEventListeners(evt) {
|
|
function checkForJS_Finish() {
|
|
if (getButtons()?.offsetParent && isVideoLoaded()) {
|
|
clearInterval(jsInitChecktimer);
|
|
jsInitChecktimer = null;
|
|
const buttons = getButtons();
|
|
if (!window.returnDislikeButtonlistenersSet) {
|
|
buttons.children[0].addEventListener("click", () => likeClicked(storedData));
|
|
buttons.children[1].addEventListener("click", () => dislikeClicked(storedData));
|
|
window.returnDislikeButtonlistenersSet = true;
|
|
}
|
|
setInitialState(storedData);
|
|
}
|
|
}
|
|
|
|
if (window.location.href.indexOf("watch?") >= 0) {
|
|
jsInitChecktimer = setInterval(checkForJS_Finish, 111);
|
|
}
|
|
}
|
|
|
|
setEventListeners();
|
|
|
|
document.addEventListener("yt-navigate-finish", function (event) {
|
|
if (jsInitChecktimer !== null) clearInterval(jsInitChecktimer);
|
|
window.returnDislikeButtonlistenersSet = false;
|
|
setEventListeners();
|
|
});
|
|
|
|
setTimeout(() => sendVideoIds(), 2500);
|