|
|
@ -17,12 +17,16 @@
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
import { Devs } from "../utils/constants";
|
|
|
|
import { Devs } from "../utils/constants";
|
|
|
|
import definePlugin from "../utils/types";
|
|
|
|
import { lazyWebpack } from "../utils/misc";
|
|
|
|
|
|
|
|
import definePlugin, { OptionType } from "../utils/types";
|
|
|
|
|
|
|
|
import { Settings } from "../Vencord";
|
|
|
|
|
|
|
|
import { filters } from "../webpack";
|
|
|
|
|
|
|
|
const RelationshipStore = lazyWebpack(filters.byProps("getRelationships", "isBlocked"));
|
|
|
|
|
|
|
|
|
|
|
|
export default definePlugin({
|
|
|
|
export default definePlugin({
|
|
|
|
name: "NoBlockedMessages",
|
|
|
|
name: "NoBlockedMessages",
|
|
|
|
description: "Hides all blocked messages from chat completely.",
|
|
|
|
description: "Hides all blocked messages from chat completely.",
|
|
|
|
authors: [Devs.rushii],
|
|
|
|
authors: [Devs.rushii, Devs.Samu],
|
|
|
|
patches: [
|
|
|
|
patches: [
|
|
|
|
{
|
|
|
|
{
|
|
|
|
find: 'safety_prompt:"DMSpamExperiment",response:"show_redacted_messages"',
|
|
|
|
find: 'safety_prompt:"DMSpamExperiment",response:"show_redacted_messages"',
|
|
|
@ -32,6 +36,26 @@ export default definePlugin({
|
|
|
|
replace: ".collapsedReason;return null;return;"
|
|
|
|
replace: ".collapsedReason;return null;return;"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
]
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
find: "displayName=\"MessageStore\"",
|
|
|
|
|
|
|
|
predicate: () => Settings.plugins.NoBlockedMessages.ignoreBlockedMessages === true,
|
|
|
|
|
|
|
|
replacement: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
match: /(?<=MESSAGE_CREATE:function\((\w)\){var \w=\w\.channelId,\w=\w\.message,\w=\w\.isPushNotification,\w=\w\.\w\.getOrCreate\(\w\));/,
|
|
|
|
|
|
|
|
replace: ";if(Vencord.Plugins.plugins.IgnoreBlockedUsers.isBlocked(n))return;"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
]
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
options: {
|
|
|
|
|
|
|
|
ignoreBlockedMessages: {
|
|
|
|
|
|
|
|
description: "Completely ignores (recent) incoming messages from blocked users (locally).",
|
|
|
|
|
|
|
|
type: OptionType.BOOLEAN,
|
|
|
|
|
|
|
|
default: false,
|
|
|
|
|
|
|
|
restartNeeded: true,
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isBlocked: message =>
|
|
|
|
|
|
|
|
RelationshipStore.isBlocked(message.author.id)
|
|
|
|
});
|
|
|
|
});
|
|
|
|