aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/randomiseFileNames.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/randomiseFileNames.ts')
-rw-r--r--src/plugins/randomiseFileNames.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/plugins/randomiseFileNames.ts b/src/plugins/randomiseFileNames.ts
new file mode 100644
index 0000000..687b288
--- /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);
+ },
+});