aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/apiMessageEvents.ts
diff options
context:
space:
mode:
authorArjixWasTaken <53124886+ArjixWasTaken@users.noreply.github.com>2022-08-31 21:53:36 +0300
committerGitHub <noreply@github.com>2022-08-31 20:53:36 +0200
commitc3ff092162ef1a98bea78213e473be3207998d72 (patch)
tree96b5f04944064c7021cdd60e1b44e3bade2aacc2 /src/plugins/apiMessageEvents.ts
parenta7ccbcfca4f181790b86199a7f31d1ae19e0253f (diff)
downloadVencord-c3ff092162ef1a98bea78213e473be3207998d72.tar.gz
Vencord-c3ff092162ef1a98bea78213e473be3207998d72.tar.bz2
Vencord-c3ff092162ef1a98bea78213e473be3207998d72.zip
Add nitro bypass (#4)
Diffstat (limited to 'src/plugins/apiMessageEvents.ts')
-rw-r--r--src/plugins/apiMessageEvents.ts28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/plugins/apiMessageEvents.ts b/src/plugins/apiMessageEvents.ts
new file mode 100644
index 0000000..79acd32
--- /dev/null
+++ b/src/plugins/apiMessageEvents.ts
@@ -0,0 +1,28 @@
+import definePlugin from "../utils/types";
+
+export default definePlugin({
+ name: "MessageEventsAPI",
+ description: "Api required by anything using message events.",
+ author: "ArjixWasTaken",
+ patches: [
+ {
+ find: "sendMessage:function",
+ replacement: [{
+ match: /(?<=sendMessage:function\(.{1,2},.{1,2},.{1,2},.{1,2}\)){/,
+ replace: "{Vencord.Api.MessageEvents._handlePreSend(...arguments);"
+ }, {
+ match: /(?<=editMessage:function\(.{1,2},.{1,2},.{1,2}\)){/,
+ replace: "{Vencord.Api.MessageEvents._handlePreEdit(...arguments);"
+ }]
+ },
+ {
+ find: "if(e.altKey){",
+ replacement: {
+ match: /\.useClickMessage=function\((.{1,2}),(.{1,2})\).+?function\((.{1,2})\){/,
+ replace: (m, message, channel, event) =>
+ // the message param is shadowed by the event param, so need to alias them
+ `${m.replace("{", `{var _msg=${message};var _chan=${channel};`)}Vencord.Api.MessageEvents._handleClick(_msg, _chan, ${event});`
+ }
+ }
+ ]
+});