diff --git a/README.md b/README.md index 3d76ea2a..d241c9e7 100644 --- a/README.md +++ b/README.md @@ -15,207 +15,207 @@ You can join our [discord server](https://discord.gg/5Xh2W87egW) for commits, ch ### All Platforms -- AllCallTimers by MaxHerbold & D3SOX -- AltKrispSwitch by newwares -- AlwaysExpandProfile by thororen -- AmITyping by MrDiamond -- Anammox by Kyuuhachi -- AudiobookShelfRPC by vMohammad -- AtSomeone by Joona -- BannersEverywhere by ImLvna & AutumnVN -- BetterActivities by D3SOX, Arjix, AutumnVN -- BetterAudioPlayer by Creations -- BetterBanReasons by Inbestigator -- BetterBlockedUsers by TheArmagan -- BetterInvites by iamme -- BetterPlusReacts by Joona -- BetterQuickReact by Ven & Sqaaakoi -- BlockKeywords by catcraft -- BlockKrisp by D3SOX -- BypassPinPrompt by thororen -- BypassStatus by Inbestigator & thororen -- ChannelBadges by Creations -- ChannelTabs by TheSun, TheKodeToad, keifufu, Nickyux -- CharacterCounter by Creations & Panniku -- CleanChannelName by AutumnVN -- ClientSideBlock by Samwich -- CommandPalette by Ethan -- CopyStickerLinks by Byeoon -- CopyUserMention by Cortex & castdrian -- CustomFolderIcons by sadan -- CustomSounds by TheKodeToad & SpikeHD -- CustomTimestamps by Rini, nvhrr, Suffocate, Obsidian -- CustomUserColors by mochienya -- CuteAnimeBoys by ShadyGoat -- CuteNekos by echo -- CutePats by thororen -- DecodeBase64 by ThePirateStoner -- Demonstration by Samwich -- DisableAnimations by S€th -- DisableCameras by Joona -- DontFilterMe by Samwich -- Encryptcord by Inbestigator -- EquicordHelper by thororen & nyx -- Equissant by SomeAspy & thororen -- ExportContacts by dat_insanity -- FakeProfileThemesAndEffects by ryan -- CopyProfileColors by Crxa -- FastDeleteChannels by thororen -- FindReply by newwares -- FixFileExtensions by thororen -- FollowVoiceUser by TheArmagan -- FontLoader by vmohammad -- ForwardAnywhere by thororen -- Freaky by nyx -- FrequentQuickSwitcher by Samwich -- FriendCodes by HypedDomi -- FriendshipRanks by Samwich -- FriendTags by Samwich -- FullVcPfp by mochie -- GensokyoRadioRPC by RyanCaoDev & Prince527 -- GifCollections by Aria & Creations -- GifRoulette by Samwich -- GitHubRepos by talhakf -- Glide by Samwich -- GlobalBadges by HypedDomi & Hosted by Wolfie -- GoogleThat by Samwich -- GuildPickerDumper by Cortex, Samwich, Synth, thororen -- HideChatButtons by iamme -- HideServers by bepvte -- HolyNotes by Wolfie -- HomeTyping by Samwich -- HopOn by ImLvna -- Husk by nin0dev -- IconViewer by iamme -- Identity by Samwich -- IgnoreCalls by TheArmagan -- IgnoreTerms by D3SOX -- ImagePreview by Creations -- ImgToGif by zyqunix -- Ingtoninator by zyqunix -- InRole by nin0dev -- InstantScreenshare by HAHALOSAH & thororen -- IRememberYou by zoodogood -- JellyfinRichPresence by vMohammad -- Jumpscare by Surgedevs -- JumpToStart by Samwich -- KeyboardSounds by HypedDomi -- KeywordNotify by camila314 & x3rt -- LastActive by Crxa -- LimitMiddleClickPaste by no dev listed -- LoginWithQR by nexpid -- MediaPlaybackSpeed by D3SOX -- Meow by Samwich -- MessageBurst by port -- MessageColors by Hen -- MessageFetchTimer by GroupXyz -- MessageLinkTooltip by Kyuuhachi -- MessageLoggerEnhanced by Aria -- MessageTranslate by Samwich -- ModalFade by Kyuuhachi -- MoreCommands by Arjix, echo, Samu -- MoreKaomoji by JacobTm & voidbbg -- MoreStickers by Leko & Arjix -- MoreUserTags by Cyn, TheSun, RyanCaoDev, LordElias, AutumnVN, hen -- Morse by zyqunix -- Moyai by Megu & Nuckyz -- NeverPausePreviews by vappstar -- NewPluginsManager by Sqaaakoi -- NoAppsAllowed by meowabyte -- NoBulletPoints by Samwich -- NoDeleteSafety by Samwich -- NoMirroredCamera by Nyx -- NoModalAnimation by AutumnVN -- NoNitroUpsell by thororen -- NoOnboarding by omaw & Glitch -- NoRoleHeaders by Samwich -- NotificationTitle by Kyuuhachi -- PartyMode by UwUDev -- PingNotifications by smuki -- PinIcon by iamme -- PlatformSpoofer by Drag -- PolishWording by Samwich -- PurgeMessages by bhop & nyx -- QuestCompleter by Amia -- QuestionMarkReplacement by nyx -- Quoter by Samwich -- RandomVoice by xijexo, omaw, thororen -- Remix by MrDiamond -- RemixMe by meowabyte -- RepeatMessage by Tolgchu -- ReplyPingControl by ant0n & MrDiamond -- RPCEditor by Nyako & nin0dev -- RPCStats by Samwich -- SearchFix by Jaxx -- SekaiStickers by MaiKokain -- ServerSearch by camila314 -- ShowBadgesInChat by Inbestigator & KrystalSkull -- SidebarChat by Joona -- Signature by Ven, Rini, ImBanana, KrystalSkull -- Slap by Korbo -- Soggy by sliwka -- SoundBoardLogger by Moxxie, fres, echo, maintained by thororen -- SplitLargeMessages by Reycko -- SpotifyActivityToggle by thororen -- SpotifyLyrics by Joona -- StatsfmPresence by Crxa -- StatusPresets by iamme -- SteamStatusSync by niko -- StickerBlocker by Samwich -- StreamingCodecDisabler by davidkra230 -- TalkInReverse by Tolgchu -- TeX by Kyuuhachi -- TextToSpeech by Samwich -- ThemeLibrary by Fafa -- TidalEmbeds by vmohammad -- Timezones by Aria -- Title by Kyuuhachi -- ToastNotifications by Skully, Ethan, Buzzy -- ToggleVideoBind by mochie -- TosuRPC by AutumnVN -- Translate+ by Prince527 & Ven -- UnitConverter by sadan -- UnlimitedAccounts by thororen -- UnreadCountBadge by Joona -- UserPFP by nexpid & thororen -- UwUifier by echo -- VCNarratorCustom by Loukios, ported by example-git -- VCPanelSettings by nin0dev -- VCSupport by thororen -- VencordRPC by AutumnVN -- VideoSpeed by Samwich -- ViewRawVariant by Kyuuhachi -- VoiceChatUtilities by D3SOX -- VoiceJoinMessages by Sqaaakoi & maintained by thororen -- WallpaperFree by Joona -- WebpackTarball by Kyuuhachi -- WhitelistedEmojis by Creations -- WhosWatching by fres -- WigglyText by nexpid -- Woof by Samwich -- WriteUpperCase by Samwich & KrystalSkull -- YoutubeDescription by arHSM +- AllCallTimers by MaxHerbold & D3SOX +- AltKrispSwitch by newwares +- AlwaysExpandProfile by thororen +- AmITyping by MrDiamond +- Anammox by Kyuuhachi +- AudiobookShelfRPC by vMohammad +- AtSomeone by Joona +- BannersEverywhere by ImLvna & AutumnVN +- BetterActivities by D3SOX, Arjix, AutumnVN +- BetterAudioPlayer by Creations +- BetterBanReasons by Inbestigator +- BetterBlockedUsers by TheArmagan +- BetterInvites by iamme +- BetterPlusReacts by Joona +- BetterQuickReact by Ven & Sqaaakoi +- BlockKeywords by catcraft +- BlockKrisp by D3SOX +- BypassPinPrompt by thororen +- BypassStatus by Inbestigator & thororen +- ChannelBadges by Creations +- ChannelTabs by TheSun, TheKodeToad, keifufu, Nickyux +- CharacterCounter by Creations & Panniku +- CleanChannelName by AutumnVN +- ClientSideBlock by Samwich +- CommandPalette by Ethan +- CopyStickerLinks by Byeoon +- CopyUserMention by Cortex & castdrian +- CustomFolderIcons by sadan +- CustomSounds by TheKodeToad & SpikeHD +- CustomTimestamps by Rini, nvhrr, Suffocate, Obsidian +- CustomUserColors by mochienya +- CuteAnimeBoys by ShadyGoat +- CuteNekos by echo +- CutePats by thororen +- DecodeBase64 by ThePirateStoner +- Demonstration by Samwich +- DisableAnimations by S€th +- DisableCameras by Joona +- DontFilterMe by Samwich +- Encryptcord by Inbestigator +- EquicordHelper by thororen & nyx +- Equissant by SomeAspy & thororen +- ExportContacts by dat_insanity +- FakeProfileThemesAndEffects by ryan +- CopyProfileColors by Crxa +- FastDeleteChannels by thororen +- FindReply by newwares +- FixFileExtensions by thororen +- FollowVoiceUser by TheArmagan +- FontLoader by vmohammad +- ForwardAnywhere by thororen +- Freaky by nyx +- FrequentQuickSwitcher by Samwich +- FriendCodes by HypedDomi +- FriendshipRanks by Samwich +- FriendTags by Samwich +- FullVcPfp by mochie +- GensokyoRadioRPC by RyanCaoDev & Prince527 +- GifCollections by Aria & Creations +- GifRoulette by Samwich +- GitHubRepos by talhakf +- Glide by Samwich +- GlobalBadges by HypedDomi & Hosted by Wolfie +- GoogleThat by Samwich +- GuildPickerDumper by Cortex, Samwich, Synth, thororen +- HideChatButtons by iamme +- HideServers by bepvte +- HolyNotes by Wolfie +- HomeTyping by Samwich +- HopOn by ImLvna +- Husk by nin0dev +- IconViewer by iamme +- Identity by Samwich +- IgnoreCalls by TheArmagan +- IgnoreTerms by D3SOX +- ImagePreview by Creations +- ImgToGif by zyqunix +- Ingtoninator by zyqunix +- InRole by nin0dev +- InstantScreenshare by HAHALOSAH & thororen +- IRememberYou by zoodogood +- JellyfinRichPresence by vMohammad +- Jumpscare by Surgedevs +- JumpToStart by Samwich +- KeyboardSounds by HypedDomi +- KeywordNotify by camila314 & x3rt +- LastActive by Crxa +- LimitMiddleClickPaste by no dev listed +- LoginWithQR by nexpid +- MediaPlaybackSpeed by D3SOX +- Meow by Samwich +- MessageBurst by port +- MessageColors by Hen +- MessageFetchTimer by GroupXyz +- MessageLinkTooltip by Kyuuhachi +- MessageLoggerEnhanced by Aria +- MessageTranslate by Samwich +- ModalFade by Kyuuhachi +- MoreCommands by Arjix, echo, Samu +- MoreKaomoji by JacobTm & voidbbg +- MoreStickers by Leko & Arjix +- MoreUserTags by Cyn, TheSun, RyanCaoDev, LordElias, AutumnVN, hen +- Morse by zyqunix +- Moyai by Megu & Nuckyz +- NeverPausePreviews by vappstar +- NewPluginsManager by Sqaaakoi +- NoAppsAllowed by meowabyte +- NoBulletPoints by Samwich +- NoDeleteSafety by Samwich +- NoMirroredCamera by Nyx +- NoModalAnimation by AutumnVN +- NoNitroUpsell by thororen +- NoOnboarding by omaw & Glitch +- NoRoleHeaders by Samwich +- NotificationTitle by Kyuuhachi +- PartyMode by UwUDev +- PingNotifications by smuki +- PinIcon by iamme +- PlatformSpoofer by Drag +- PolishWording by Samwich +- PurgeMessages by bhop & nyx +- QuestCompleter by Amia +- QuestionMarkReplacement by nyx +- Quoter by Samwich +- RandomVoice by xijexo, omaw, thororen +- Remix by MrDiamond +- RemixMe by meowabyte +- RepeatMessage by Tolgchu +- ReplyPingControl by ant0n & MrDiamond +- RPCEditor by Nyako & nin0dev +- RPCStats by Samwich +- SearchFix by Jaxx +- SekaiStickers by MaiKokain +- ServerSearch by camila314 +- ShowBadgesInChat by Inbestigator & KrystalSkull +- SidebarChat by Joona +- Signature by Ven, Rini, ImBanana, KrystalSkull +- Slap by Korbo +- Soggy by sliwka +- SoundBoardLogger by Moxxie, fres, echo, maintained by thororen +- SplitLargeMessages by Reycko +- SpotifyActivityToggle by thororen +- SpotifyLyrics by Joona +- StatsfmPresence by Crxa +- StatusPresets by iamme +- SteamStatusSync by niko +- StickerBlocker by Samwich +- StreamingCodecDisabler by davidkra230 +- TalkInReverse by Tolgchu +- TeX by Kyuuhachi +- TextToSpeech by Samwich +- ThemeLibrary by Fafa +- TidalEmbeds by vmohammad +- Timezones by Aria +- Title by Kyuuhachi +- ToastNotifications by Skully, Ethan, Buzzy +- ToggleVideoBind by mochie +- TosuRPC by AutumnVN +- Translate+ by Prince527 & Ven +- UnitConverter by sadan +- UnlimitedAccounts by thororen +- UnreadCountBadge by Joona +- UserPFP by nexpid & thororen +- UwUifier by echo +- VCNarratorCustom by Loukios, ported by example-git +- VCPanelSettings by nin0dev +- VCSupport by thororen +- VencordRPC by AutumnVN +- VideoSpeed by Samwich +- ViewRawVariant by Kyuuhachi +- VoiceChatUtilities by D3SOX +- VoiceJoinMessages by Sqaaakoi & maintained by thororen +- WallpaperFree by Joona +- WebpackTarball by Kyuuhachi +- WhitelistedEmojis by Creations +- WhosWatching by fres +- WigglyText by nexpid +- Woof by Samwich +- WriteUpperCase by Samwich & KrystalSkull +- YoutubeDescription by arHSM ### Web Only -- None At This Time +- None At This Time ### Vesktop & Equibop Only -- ScreenRecorder by AutumnVN +- ScreenRecorder by AutumnVN ### Discord Desktop Only -- ClipsEnhancements by niko -- MediaDownloader by Colorman -- NoRPC by Cyn -- StatusWhilePlaying by thororen +- ClipsEnhancements by niko +- MediaDownloader by Colorman +- NoRPC by Cyn +- StatusWhilePlaying by thororen ### Equicord Devbuilds Only -- FurudoSpeak by example-git -- Shakespearean by vmohammad -- VoiceChannelLog by Sqaaakoi & maintained by thororen +- FurudoSpeak by example-git +- Shakespearean by vmohammad +- VoiceChannelLog by Sqaaakoi & maintained by thororen @@ -223,18 +223,18 @@ You can join our [discord server](https://discord.gg/5Xh2W87egW) for commits, ch Windows -- [GUI](https://github.com/Equicord/Equilotl/releases/latest/download/Equilotl.exe) -- [CLI](https://github.com/Equicord/Equilotl/releases/latest/download/EquilotlCli.exe) +- [GUI](https://github.com/Equicord/Equilotl/releases/latest/download/Equilotl.exe) +- [CLI](https://github.com/Equicord/Equilotl/releases/latest/download/EquilotlCli.exe) MacOS -- [GUI](https://github.com/Equicord/Equilotl/releases/latest/download/Equilotl.MacOS.zip) +- [GUI](https://github.com/Equicord/Equilotl/releases/latest/download/Equilotl.MacOS.zip) Linux -- [GUI-X11](https://github.com/Equicord/Equilotl/releases/latest/download/Equilotl-x11) -- [CLI](https://github.com/Equicord/Equilotl/releases/latest/download/EquilotlCli-Linux) -- [AUR](https://aur.archlinux.org/packages?O=0&K=equicord) +- [GUI-X11](https://github.com/Equicord/Equilotl/releases/latest/download/Equilotl-x11) +- [CLI](https://github.com/Equicord/Equilotl/releases/latest/download/EquilotlCli-Linux) +- [AUR](https://aur.archlinux.org/packages?O=0&K=equicord) ```shell sh -c "$(curl -sS https://raw.githubusercontent.com/Equicord/Equicord/refs/heads/main/misc/install.sh)" diff --git a/src/api/MessageEvents.ts b/src/api/MessageEvents.ts index 9f87a0ef..1210e18c 100644 --- a/src/api/MessageEvents.ts +++ b/src/api/MessageEvents.ts @@ -38,6 +38,8 @@ export interface Upload { filename: string; id: string; isImage: boolean; + isRemix?: boolean; + isThumbnail: boolean; isVideo: boolean; item: { file: File; diff --git a/src/equicordplugins/remixMe/index.tsx b/src/equicordplugins/remixMe/index.tsx index 43849855..08d4916a 100644 --- a/src/equicordplugins/remixMe/index.tsx +++ b/src/equicordplugins/remixMe/index.tsx @@ -4,20 +4,20 @@ * SPDX-License-Identifier: GPL-3.0-or-later */ -import { addMessagePreSendListener, type MessageExtra, type MessageObject, type MessageSendListener, removeMessagePreSendListener } from "@api/MessageEvents"; +import { addMessagePreSendListener, MessageSendListener, removeMessagePreSendListener } from "@api/MessageEvents"; import { EquicordDevs } from "@utils/constants"; import definePlugin from "@utils/types"; -import type { UploadWithRemix } from "./types"; - - -const handleMessage: MessageSendListener = (_: string, __: MessageObject, ex: MessageExtra) => - ex.uploads && (ex.uploads as UploadWithRemix[]).forEach(att => att.isRemix = true); +const handleMessage: MessageSendListener = (_, __, ex) => ex.uploads && ex.uploads.forEach(att => att.isRemix = true); export default definePlugin({ name: "RemixMe", description: "Turns every single message with attachment to have remix tag", authors: [EquicordDevs.meowabyte], - start: () => addMessagePreSendListener(handleMessage), - stop: () => removeMessagePreSendListener(handleMessage) + start() { + addMessagePreSendListener(handleMessage); + }, + stop() { + removeMessagePreSendListener(handleMessage); + } }); diff --git a/src/equicordplugins/remixMe/types.ts b/src/equicordplugins/remixMe/types.ts deleted file mode 100644 index df69d500..00000000 --- a/src/equicordplugins/remixMe/types.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* - * Vencord, a Discord client mod - * Copyright (c) 2025 Vendicated and contributors - * SPDX-License-Identifier: GPL-3.0-or-later - */ - -import { Upload } from "@api/MessageEvents"; - -export type UploadWithRemix = Upload & { isRemix?: boolean; }; diff --git a/src/equicordplugins/viewRawVariant/index.tsx b/src/equicordplugins/viewRawVariant/index.tsx index a6a1f40f..62c267d0 100644 --- a/src/equicordplugins/viewRawVariant/index.tsx +++ b/src/equicordplugins/viewRawVariant/index.tsx @@ -5,8 +5,10 @@ */ import { NavContextMenuPatchCallback } from "@api/ContextMenu"; +import { addMessagePreSendListener, MessageExtra, MessageObject, MessageSendListener, removeMessagePreSendListener } from "@api/MessageEvents"; import { CodeBlock } from "@components/CodeBlock"; import ErrorBoundary from "@components/ErrorBoundary"; +import { UploadWithRemix } from "@equicordplugins/remixMe/types"; import { Devs } from "@utils/constants"; import { getIntlMessage } from "@utils/discord"; import { Margins } from "@utils/margins"; @@ -125,6 +127,8 @@ function makeContextCallback( }; } +const handleMessage: MessageSendListener = (_: string, __: MessageObject, ex: MessageExtra) => ex.uploads && (ex.uploads as UploadWithRemix[]).forEach(att => console.log(att)); + export default definePlugin({ name: "ViewRawVariant", description: "Copy/View raw content of any message, channel, or guild, but show in the right click menu.", @@ -143,4 +147,10 @@ export default definePlugin({ openViewRawModal(cleanMessage(val), "Message", true), ), }, + start() { + addMessagePreSendListener(handleMessage); + }, + stop() { + removeMessagePreSendListener(handleMessage); + } });