presence.ts 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. const presence = new Presence({
  2. clientId: "691325899307483197",
  3. });
  4. presence.on("UpdateData", async () => {
  5. const presenceData: PresenceData = {
  6. largeImageKey: "https://cdn.rcd.gg/PreMiD/websites/K/Koya/assets/logo.png",
  7. };
  8. if (document.location.pathname === "/") presenceData.details = "Home";
  9. else if (document.location.pathname.includes("/dashboard")) {
  10. presenceData.details = "Dashboard";
  11. presenceData.state = "Choosing a server...";
  12. } else if (document.location.pathname.includes("/server/")) {
  13. presenceData.details = `Edit a server : ${
  14. document.querySelector(".title").textContent
  15. }`;
  16. if (!document.location.pathname.split("/")[3]) presenceData.state = "Main";
  17. else presenceData.state = document.querySelector("a.is-active").textContent;
  18. } else if (document.location.pathname.includes("/status")) {
  19. presenceData.details = "Status";
  20. presenceData.state = "Watching current status of Koya";
  21. } else if (document.location.pathname.includes("/commands")) {
  22. presenceData.details = "Commands";
  23. presenceData.state = document.querySelector(
  24. "a.cat-toggle.is-active"
  25. ).textContent;
  26. } else if (document.location.pathname.includes("/premium")) {
  27. presenceData.details = "Premium";
  28. presenceData.state = "Watching premium page";
  29. }
  30. if (!presenceData.details) presence.setActivity();
  31. else {
  32. presenceData.state ??= "Navigating...";
  33. presence.setActivity(presenceData);
  34. }
  35. });