aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/normalizeMessageLinks/index.ts26
-rw-r--r--src/utils/constants.ts4
2 files changed, 30 insertions, 0 deletions
diff --git a/src/plugins/normalizeMessageLinks/index.ts b/src/plugins/normalizeMessageLinks/index.ts
new file mode 100644
index 0000000..cac36e6
--- /dev/null
+++ b/src/plugins/normalizeMessageLinks/index.ts
@@ -0,0 +1,26 @@
+/*
+ * Vencord, a Discord client mod
+ * Copyright (c) 2023 Vendicated and contributors
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ */
+
+import { Devs } from "@utils/constants";
+import definePlugin from "@utils/types";
+
+export default definePlugin({
+ name: "NormalizeMessageLinks",
+ description: "Strip canary/ptb from message links",
+ authors: [Devs.bb010g],
+ patches: [
+ {
+ find: ".Messages.COPY_MESSAGE_LINK,",
+ replacement: {
+ match: /\.concat\(location\.host\)/,
+ replace: ".concat($self.normalizeHost(location.host))",
+ },
+ },
+ ],
+ normalizeHost(host: string) {
+ return host.replace(/(^|\b)(canary\.|ptb\.)(discord.com)$/, "$1$3");
+ },
+});
diff --git a/src/utils/constants.ts b/src/utils/constants.ts
index 3266e24..9e2b2fe 100644
--- a/src/utils/constants.ts
+++ b/src/utils/constants.ts
@@ -347,6 +347,10 @@ export const Devs = /* #__PURE__*/ Object.freeze({
name: "arrow",
id: 958158495302176778n
},
+ bb010g: {
+ name: "bb010g",
+ id: 72791153467990016n,
+ },
} satisfies Record<string, Dev>);
// iife so #__PURE__ works correctly