From 40395d562aeadaeaa88c5bc106797ea5a4ee51e4 Mon Sep 17 00:00:00 2001
From: Nuckyz <61953774+Nuckyz@users.noreply.github.com>
Date: Wed, 8 Mar 2023 00:11:59 -0300
Subject: Improvements for patches and misc stuff (#582)
---
src/plugins/ignoreActivities.tsx | 65 +++++++++++++++++++++-------------------
1 file changed, 35 insertions(+), 30 deletions(-)
(limited to 'src/plugins/ignoreActivities.tsx')
diff --git a/src/plugins/ignoreActivities.tsx b/src/plugins/ignoreActivities.tsx
index 3d53bbc..07b458f 100644
--- a/src/plugins/ignoreActivities.tsx
+++ b/src/plugins/ignoreActivities.tsx
@@ -21,7 +21,7 @@ import ErrorBoundary from "@components/ErrorBoundary";
import { Devs } from "@utils/constants";
import { useForceUpdater } from "@utils/misc";
import definePlugin from "@utils/types";
-import { findByPropsLazy } from "@webpack";
+import { findByPropsLazy, findStoreLazy } from "@webpack";
import { Tooltip } from "webpack/common";
enum ActivitiesTypes {
@@ -37,7 +37,7 @@ interface IgnoredActivity {
const RegisteredGamesClasses = findByPropsLazy("overlayToggleIconOff", "overlayToggleIconOn");
const TryItOutClasses = findByPropsLazy("tryItOutBadge", "tryItOutBadgeIcon");
const BaseShapeRoundClasses = findByPropsLazy("baseShapeRound", "baseShapeRoundLeft", "baseShapeRoundRight");
-const RunningGameStore = findByPropsLazy("getRunningGames", "getGamesSeen");
+const RunningGameStore = findStoreLazy("RunningGameStore");
function ToggleIconOff() {
return (
@@ -71,7 +71,7 @@ function ToggleIconOff() {
);
}
-function ToggleIconOn() {
+function ToggleIconOn({ forceWhite }: { forceWhite?: boolean; }) {
return (
);
}
-function ToggleActivityComponent({ activity }: { activity: IgnoredActivity; }) {
+function ToggleActivityComponent({ activity, forceWhite }: { activity: IgnoredActivity; forceWhite?: boolean; }) {
const forceUpdate = useForceUpdater();
return (
@@ -105,7 +106,7 @@ function ToggleActivityComponent({ activity }: { activity: IgnoredActivity; }) {
{
ignoredActivitiesCache.has(activity.id)
?
- :
+ :
}
)}
@@ -117,9 +118,9 @@ function ToggleActivityComponentWithBackground({ activity }: { activity: Ignored
return (
-
+
);
}
@@ -142,28 +143,32 @@ export default definePlugin({
name: "IgnoreActivities",
authors: [Devs.Nuckyz],
description: "Ignore certain activities (like games and actual activities) from showing up on your status. You can configure which ones are ignored from the Registered Games and Activities tabs.",
- patches: [{
- find: ".Messages.SETTINGS_GAMES_TOGGLE_OVERLAY",
- replacement: {
- match: /!(\i)\|\|(null==\i\)return null;var \i=(\i)\.overlay.+?children:)(\[.{0,70}overlayStatusText.+?\])(?=}\)}\(\))/,
- replace: (_, platformCheck, restWithoutPlatformCheck, props, children) => ""
- + `${restWithoutPlatformCheck}`
- + `(${platformCheck}?${children}:[])`
- + `.concat(Vencord.Plugins.plugins.IgnoreActivities.renderToggleGameActivityButton(${props}))`
- }
- }, {
- find: ".overlayBadge",
- replacement: {
- match: /.badgeContainer.+?.\?\(0,.\.jsx\)\(.{1,2},{name:(?.)\.name}\):null/,
- replace: "$&,$self.renderToggleActivityButton($)"
- }
- }, {
- find: '.displayName="LocalActivityStore"',
- replacement: {
- match: /(?.)\.push\(.\({type:.\..{1,3}\.LISTENING.+?\)\)/,
- replace: "$&;$=$.filter($self.isActivityNotIgnored);"
+ patches: [
+ {
+ find: ".Messages.SETTINGS_GAMES_TOGGLE_OVERLAY",
+ replacement: {
+ match: /!(\i)\|\|(null==\i\)return null;var \i=(\i)\.overlay.+?children:)(\[.{0,70}overlayStatusText.+?\])(?=}\)}\(\))/,
+ replace: (_, platformCheck, restWithoutPlatformCheck, props, children) => ""
+ + `${restWithoutPlatformCheck}`
+ + `(${platformCheck}?${children}:[])`
+ + `.concat(Vencord.Plugins.plugins.IgnoreActivities.renderToggleGameActivityButton(${props}))`
+ }
+ },
+ {
+ find: ".overlayBadge",
+ replacement: {
+ match: /(?<=\(\)\.badgeContainer.+?(\i)\.name}\):null)/,
+ replace: (_, props) => `,$self.renderToggleActivityButton(${props})`
+ }
+ },
+ {
+ find: '.displayName="LocalActivityStore"',
+ replacement: {
+ match: /LISTENING.+?\)\);(?<=(\i)\.push.+?)/,
+ replace: (m, activities) => `${m}${activities}=${activities}.filter($self.isActivityNotIgnored);`
+ }
}
- }],
+ ],
async start() {
const ignoredActivitiesData = await DataStore.get>("IgnoreActivities_ignoredActivities") ?? new Map();
@@ -217,5 +222,5 @@ export default definePlugin({
}
}
return true;
- },
+ }
});
--
cgit