aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/noTrack.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/noTrack.ts')
-rw-r--r--src/plugins/noTrack.ts31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/plugins/noTrack.ts b/src/plugins/noTrack.ts
new file mode 100644
index 0000000..6d3a0ba
--- /dev/null
+++ b/src/plugins/noTrack.ts
@@ -0,0 +1,31 @@
+import definePlugin from "../utils/types";
+import { findByProps } from "../utils/webpack";
+
+const DO_NOTHING = () => void 0;
+
+export default definePlugin({
+ name: "NoTrack",
+ description: "Disable Discord's tracking and crash reporting",
+ author: "Vendicated",
+ start() {
+ findByProps("getSuperPropertiesBase64", "track").track = DO_NOTHING;
+ findByProps("submitLiveCrashReport").submitLiveCrashReport = DO_NOTHING;
+ findByProps("AnalyticsActionHandlers").AnalyticsActionHandlers.handleTrack = DO_NOTHING;
+
+ const sentry = window.__SENTRY__;
+ sentry.logger.disable();
+
+ sentry.hub.addBreadcrumb = DO_NOTHING;
+ sentry.hub.getClient().close(0);
+ sentry.hub.getScope().clear();
+
+ const c = console;
+ for (const method in c) {
+ if (c[method].__sentry_original__)
+ c[method] = c[method].__sentry_original__;
+ if (c[method].__REACT_DEVTOOLS_ORIGINAL_METHOD__?.__sentry_original__)
+ c[method].__REACT_DEVTOOLS_ORIGINAL_METHOD__ = c[method].__REACT_DEVTOOLS_ORIGINAL_METHOD__.__sentry_original__;
+ }
+ }
+
+}); \ No newline at end of file