aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorobscurity <z@x4.pm>2022-10-02 16:21:54 +0200
committerGitHub <noreply@github.com>2022-10-02 16:21:54 +0200
commite4c41d5d6cb4ae758be4d02fa6edcbe469dcdb26 (patch)
tree91ea35c6862070b0679d0560422c59be2dc40c31
parentca2f9d937cc6e259fb4ac5428bfd14345cc03078 (diff)
downloadVencord-e4c41d5d6cb4ae758be4d02fa6edcbe469dcdb26.tar.gz
Vencord-e4c41d5d6cb4ae758be4d02fa6edcbe469dcdb26.tar.bz2
Vencord-e4c41d5d6cb4ae758be4d02fa6edcbe469dcdb26.zip
feat(plugin): add RandomiseFileNames (#24)
-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);
+ },
+});