presence.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. const presence = new Presence({
  2. clientId: "609791567540256780",
  3. }),
  4. startTimestamp = Math.floor(Date.now() / 1000),
  5. { pathname } = window.location,
  6. strings = presence.getStrings({
  7. browsing: "general.browsing",
  8. });
  9. presence.on("UpdateData", async () => {
  10. const presenceData: PresenceData = {
  11. largeImageKey:
  12. "https://cdn.rcd.gg/PreMiD/websites/U/Union%20Mang%C3%A1s/assets/logo.png",
  13. startTimestamp,
  14. };
  15. if (pathname.startsWith("/lista-mangas")) {
  16. presenceData.details = "Procurando um mangá";
  17. presenceData.smallImageKey = Assets.Search;
  18. presenceData.smallImageText = "Procurando";
  19. } else if (pathname.startsWith("/manga")) {
  20. presenceData.details = "Olhando um mangá";
  21. presenceData.state =
  22. document.querySelector("div.col-md-12 > h2").textContent;
  23. } else if (pathname.startsWith("/leitor")) {
  24. const [mangaName, mangaChapter] = document
  25. .querySelector(".titulo-leitura")
  26. .textContent.split(" - ");
  27. presenceData.details = mangaName;
  28. if (
  29. !document
  30. .querySelector("#paginas")
  31. .getAttribute("style")
  32. .match(/display:\Wnone/)
  33. ) {
  34. presenceData.state = `${mangaChapter} - Página ${
  35. (document.querySelector("#paginas") as HTMLSelectElement).options
  36. .selectedIndex + 1
  37. }`;
  38. } else presenceData.state = mangaChapter;
  39. presenceData.smallImageKey = Assets.Reading;
  40. presenceData.smallImageText = "Lendo";
  41. } else if (pathname.startsWith("/scans")) {
  42. presenceData.details = "Procurando uma Scan";
  43. presenceData.smallImageKey = Assets.Search;
  44. presenceData.smallImageText = "Procurando";
  45. } else presenceData.details = (await strings).browsing;
  46. presence.setActivity(presenceData, true);
  47. });