From e4c41d5d6cb4ae758be4d02fa6edcbe469dcdb26 Mon Sep 17 00:00:00 2001 From: obscurity Date: Sun, 2 Oct 2022 16:21:54 +0200 Subject: [PATCH] feat(plugin): add RandomiseFileNames (#24) --- src/plugins/randomiseFileNames.ts | 32 +++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/plugins/randomiseFileNames.ts diff --git a/src/plugins/randomiseFileNames.ts b/src/plugins/randomiseFileNames.ts new file mode 100644 index 00000000..687b288c --- /dev/null +++ b/src/plugins/randomiseFileNames.ts @@ -0,0 +1,32 @@ +import definePlugin from "../utils/types"; + +export default definePlugin({ + name: "RandomiseFileNames", + authors: [ + { + name: "obscurity", + id: 336678828233588736n, + }, + ], + description: "Randomise uploaded file names", + patches: [ + { + find: "instantBatchUpload:function", + replacement: { + match: /uploadFiles:(.{1,2}),/, + replace: + "uploadFiles:(...args)=>(args[0].uploads.forEach(f=>f.filename=Vencord.Plugins.plugins.RandomiseFileNames.rand(f.filename)),$1(...args)),", + }, + }, + ], + + rand(file) { + const chars = + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + const rand = Array.from( + { length: 7 }, + () => chars[Math.floor(Math.random() * chars.length)] + ).join(""); + return rand + window.DiscordNative.fileManager.extname(file); + }, +});