diff options
Diffstat (limited to 'src/plugins')
| -rw-r--r-- | src/plugins/noReplyMention.tsx (renamed from src/plugins/noReplyMention.ts) | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/src/plugins/noReplyMention.ts b/src/plugins/noReplyMention.tsx index 620274c..91a88d3 100644 --- a/src/plugins/noReplyMention.ts +++ b/src/plugins/noReplyMention.tsx @@ -16,20 +16,43 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ +import { Settings } from "@api/settings"; import { Devs } from "@utils/constants"; -import definePlugin from "@utils/types"; +import definePlugin, { OptionType } from "@utils/types"; + +interface Reply { + message: { + author: { + id: string; + }; + }; +} export default definePlugin({ name: "NoReplyMention", description: "Disables reply pings by default", - authors: [Devs.DustyAngel47], + authors: [Devs.DustyAngel47, Devs.axyie], + options: { + exemptList: { + description: + "List of users to exempt from this plugin (separated by commas)", + type: OptionType.STRING, + default: "1234567890123445,1234567890123445", + }, + }, + shouldMention(reply: Reply) { + return Settings.plugins.NoReplyMention.exemptList.includes( + reply.message.author.id + ); + }, patches: [ { find: "CREATE_PENDING_REPLY:function", replacement: { match: /CREATE_PENDING_REPLY:function\((.{1,2})\){/, - replace: "CREATE_PENDING_REPLY:function($1){$1.shouldMention=false;" - } - } - ] + replace: + "CREATE_PENDING_REPLY:function($1){$1.shouldMention=Vencord.Plugins.plugins.NoReplyMention.shouldMention($1);", + }, + }, + ], }); |
