Commit graph

423 commits

Author SHA1 Message Date
thororen
cfec48401b
Merge remote-tracking branch 'upstream/dev' into dev 2026-10-03 11:10:38 -04:00
Connor
40ae4d2a39
CustomRPC: add toggle & Toolbox action for disabling presence (#4636)
Co-authored-by: Vendicated <vendicated@riseup.net>
2026-09-30 16:02:18 +02:00
thororen
204c5499e8
Merge remote-tracking branch 'upstream/dev' into dev 2026-09-28 07:24:47 -04:00
Scatt
4e4cdedae4
ExpressionCloner: improve FakeNitro emoji handling (#4526)
Co-authored-by: Vendicated <vendicated@riseup.net>
2026-09-28 01:43:59 +02:00
Just_Me
f5fe2bd9a4
BetterImageEditor: Better look of the shelf and couple of other fixes. (#1369)
* Move the shelf next to the editor

Fixing a couple of bugs and issues and moving the shelf with pictures beside the image editor for better usage and much better look from the previous scroller implementation

* misc

---------

Co-authored-by: thororen <78185467+thororen1234@users.noreply.github.com>
2026-09-23 01:22:07 -04:00
verticalsync
4c4768d395
update nyx discord id 2026-09-16 18:29:22 +03:00
thororen
7903d5b89c
Snippets: Allow Vencord Channels & Restrict ours properly 2026-09-14 17:01:54 -04:00
thororen
3a00853ca3
Merge remote-tracking branch 'upstream/dev' into dev 2026-09-14 16:40:18 -04:00
Vendicated
339b85ba40
MessageLinkEmbeds: fix issue where a message's origin channel could be faked
This had a bad interaction with SupportHelper, where it could be used to add a "Run Snippet" button
to any linked message, which when clicked would run code contained in that message

Reported by Kaede
2026-09-14 19:26:05 +02:00
Just_Me
9d2a1e196a
Add Betterimageeditor Plugin (#1336)
* BetterImageEditor: keep your own pictures in the image picker and cropper

Discord archives past avatars only after cropping and keeps nothing for
banners. This holds the file you chose before the cropper touches it,
remembers how you framed it, and puts both on a shelf in the picker and
under the crop window.

* Take over Discord's recent avatars slot instead of sitting above it

* Trim comments

* Do not offer a cropped copy of a picture that already is one

* List every image slot in the description

* Drop decorations from the description

* Serialise library writes and tighten the editor types

Index writers now take turns, so saving a crop and adding its cropped copy
cannot overwrite each other. Imported cropped copies point at their new
source ids. A picture only counts as worn once the cropper confirms it, and
reset or close clears it. Classes use the vc-bie- prefix and the editor
props are typed instead of any.

* Listen for profile events through the flux field

* Move the shelf into its own file and drop the comments

* Run clear through the write queue

* Fixed another bunch of bugs because I am stupid.

* Keep imported crop links only when they point somewhere real

A cropped picture remembers the id of the original it was cut from. On import
that id used to be kept as-is whenever the original was not in the file, but an
id from someone else's library matches nothing here, so cropping the same
picture again piled up another copy instead of replacing the previous one. The
link now survives only when it remaps to an imported picture or already names an
entry in this library.

* the last bunch of fixes, so Reptile isn’t screaming at me anymore

* Tie a cropped picture to its original by signature

The link stored the original's id, and ids die when a picture is trimmed off
the shelf, forgotten, or carried into another library. A crop left pointing at a
dead id no longer matched its original, so re-cropping stacked up copies instead
of replacing the previous one. A signature is the same for the same bytes, so
the link now survives all three, and the import no longer has to remap ids.

* Keep crop links working when the library predates the signature change

Old libraries and old exports store the original's id in from, which stopped matching anything once crops were linked by signature. Imports now translate an id back to its signature, and add() accepts either.

* Drop a crop's source link when the import can't resolve it

An old file can hold a crop whose original was left out, and there is nothing in the file that says which picture that id was. Keeping it stored a link that could never match. A signature is recognisable on sight, so anything that isn't one and isn't in the file is dropped.

* Update index.tsx

* Update plugin description for BetterImageEditor

* Update index.tsx

* Removal of the query selector. Now the plugin shouldn't have any

* Update src/equicordplugins/betterImageEditor/index.tsx

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Use pluralise for the toast counts

---------

Co-authored-by: thororen <78185467+thororen1234@users.noreply.github.com>
Co-authored-by: Just_Me <github@angel-dust.8shield.net>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-09-13 13:58:56 -04:00
Kurt
f74a0e8b64
Add ReactionTimestamps plugin (#1353) 2026-09-13 13:58:11 -04:00
Etorix
57a83b52b8
SMYN: Integrate PR#1337 + Cleanup. (#1338)
* Integrate PR#1337 + Cleanup.

* Typo.

* Typo.
2026-09-02 11:00:40 -04:00
Youssef Ayman
1c39a1e7e8
feat: add Voice Messages In-Background plugin (#1331)
* feat: add Voice Messages In-Background plugin

* fix: clean up completed native voice messages

* fix up patch

---------

Co-authored-by: thororen <78185467+thororen1234@users.noreply.github.com>
2026-09-02 09:00:55 -04:00
Davri
139d1ad472
FavouriteAnything: Prettier thumbnails and code cleanup (#1317)
* Perf improvements

* Remove :has rule

* Undo getThumbnailUrl changes, add newline

* FavouriteAnything update
2026-08-20 12:18:12 -04:00
gitb0i
69d6962a9b
iRememberYou: Server ID (#1310)
* feat(iRememberYou): show server and DM group ID next to name in menu

* feat(iRememberYou): add tt to authors list

* fix(iRememberYou): only render server ID on guilds (oops: thought DM collections had valid group IDs)
2026-08-18 10:43:37 -04:00
thororen1234
81e2a381d0
Merge remote-tracking branch 'upstream/dev' into dev 2026-08-12 11:25:50 -04:00
Davri
72cc4d1110
WebKeybinds: restore back/forward buttons & improve mac support (#4506) 2026-08-11 01:31:56 +00:00
Cas_
38f90a5ef7
new browser plugin WebPWA: install discord website as an app (#4508) 2026-08-10 23:18:57 +02:00
thororen1234
94c0ac8e16
Merge remote-tracking branch 'upstream/dev' into dev 2026-08-09 23:29:18 -04:00
ssalggnikool
9c6f16f0f0
WhoReacted: hide users according to NoBlockedMessage settings (#4400) 2026-08-08 21:17:40 +00:00
Bruno Krügel
6307ea7815
Add AutoJumpToMessage plugin (#1293)
* Add autoJumpToMessage plugin

* fix(autoJumpToMessage): remove duplicated author

* legal(autoJumpToMessage): add copyright header

* chore(autoJumpToMessage): remove debug logs

* autojumptomessage fixes & actually ignore muted

* Update index.ts

---------

Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
2026-08-05 22:36:07 -04:00
thororen1234
334c39decc
Merge remote-tracking branch 'upstream/dev' into dev 2026-07-27 19:25:42 -04:00
jax
0f10b57065
MemberCount: improve performance (#4403) 2026-07-26 17:40:02 +02:00
thororen1234
e491a21145
Merge remote-tracking branch 'upstream/dev' into dev 2026-07-23 11:12:09 -04:00
yuna0x0
23c42a0d8e
MessageLogger: fix new attachments being dropped on edit (#4412)
Co-authored-by: V <vendicated@riseup.net>
2026-07-21 02:49:19 +02:00
thororen1234
6a3a7a5087
KeywordNotify: Update 2026-07-19 09:18:54 -04:00
thororen1234
cefee6a4be
Merge remote-tracking branch 'upstream/dev' into dev 2026-07-17 21:37:23 -04:00
thororen1234
a0004a5b49
Merge remote-tracking branch 'upstream/dev' into dev 2026-07-15 21:37:37 -04:00
Vendicated
c4d8e8624b
chore: update some Dev IDs 2026-07-15 18:14:51 +02:00
Angel Wang
9ffb2108e8
LastFmRPC ~> MusicRPC: add ListenBrainz support (#4077)
Co-authored-by: V <vendicated@riseup.net>
2026-07-15 18:03:39 +02:00
Lunascape
e51821c740
new plugin TenorGifSearch (#4332)
Co-authored-by: V <vendicated@riseup.net>
2026-07-15 09:13:45 +02:00
Luca
f680c4db14
feat(showRolesInChat): add plugin (#1252)
* feat(showRolesInChat): add plugin

* chore(showRolesInChat): add tags

* fix(showRolesInChat): correct devs object
2026-07-12 19:22:02 -04:00
thororen1234
e0affb4795
Byeoon: Update ID 2026-07-10 20:34:31 -04:00
Star
cd4ddebf23
feat(RichPresence): Add Navidrome RPC plugin (#1223)
* feat(RichPresence): Add Navidrome RPC integration

* fix: Update Star123451 ID

* Implement Subsonic GetNowPlaying for album art

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* fix(Navidrome): address PR review comments, remove Uguu.se plugin violation

* fix(Navidrome) Fix clearing activities, add standard music RPC default config

* fix(Navidrome) Patched Credential Leak in cover art fallback code, fix non-selectable settings entries

* fix(Navidrome) fix settings cache bug, implement typescript hygiene suggestion, and make fetching album art a toggle, added note that grabbing album art exposes server URL and Navidrome username to Discord.

* fix(Navidrome): Changed cachedSettingsJSON to only affect Navidrome-specific settings, updated polling interval slider to take affect during runtime, not just start up

* feat(RichPresence): overhaul Navidrome RPC with formatting system and activity types, add fast.fm album art fetching, update settings to instantly update

* fix(RichPresence) Fix last.fm cache leak, add privacy disclosure for last.fm album fetch method, remove dead settings

* fix(RichPresence): remove unused import and fix default activity type inconsistency

* fix(RichPresence): add parseUrl valdiation to serverUrl/publicUrl, fix SwitchSetting regression, strip auth param from getCoverArt, added abort signal to prevent accidental presence revival when disabled, remove "as const" rule violation for settings.use()

* fix(RichPresense): Fix forceUpdate orphan timer leaks, correct MD5 behavior for passwords using accented characters

* fix(RichPresence): remove MD5 auth for simpler hex auth, include optional space to provide a last.fm API key, implement lodash.debounce in place of setTimeout, fixed navidrome intersepting settings from other RPC included in the plugin

* fix(RichPresence): fix hex auth code to support special characters

* fix(RichPresence): fix lastFmCache invalidation code

* fix(RichPresence): remove unused lodash import from SettingsPanel.tsx

* chore(richPresence): remove violating comments in navidrome.ts

* chore(richPresence): update navidrome.ts

* fix(richPresence): change settings to use settings.plain, fix flicker found when changing non-related plugin settings, correct || vs ?? rule violations, fetch large and small image concurrently to speed up presence update

* feat(richPresence): add status display type option for navidrome rich presence

* fix(richPresence): add lastMinutesAgo cache to detect if the same song is on repeat in order to reset song progress bar

* fix(richPresence): Fix to only show music of the username given in navidrome settings

* fix(richPresence): remove stale onServiceChange import

* fix(richPresence): fix stale activity cache when same track is replayed

* fix(richPresence): omit end property when no media duration is known

* chore(richPresence): add instance-based album art fetching disclaimer for local instances

* chore(richPresence): centralize get_activity() and forceUpdate() JSON.stringify usage

* fix(richPresence): removed unused settings migration in migrartion.ts, remove empty lines in SettingsPanel, revert syncServices to use settings.store, remove local ip instances support

* fix(richPresence): revert to md5 implementation in utils.ts for secure auth, fix album fetching from navidrome instances

* chore(richPrecence): switch to ts-md5 source for a robust MD5 implementation

* richPresence(fix): simplify public instance checking

* boom

* richPresence(fix): fix md5 implementation and revert back to getCoverArt for navidrome instance album art fetching

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
2026-07-09 19:08:23 -04:00
Basti
e9429380aa
Add AdvancedPermissions plugin (#1236)
* Add iAmAdvanced plugin

* Update src/equicordplugins/iAmAdvanced/index.tsx

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* AdvancedPermissions

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
2026-07-09 17:03:04 -04:00
August
d3410ee8e7
feat(plugin): ExtraConnectionLinks (#1220)
* feat(plugin): ExtraConnectionLinks

* feat(EquicordHelper): add being able to open links to more connections

* Remove unused connectionLinks from EquicordHelper

Removed unused connectionLinks array and its related logic.

* Remove ConnectionLink interface from utils.tsx

Removed the ConnectionLink interface and its documentation.

---------

Co-authored-by: thororen <78185467+thororen1234@users.noreply.github.com>
2026-07-08 16:51:51 -04:00
Ecorous
cb00a5b2c0
Add SedEnhanced plugin (#1188)
* add SedEnchanced

* [SedEnhanced] add README.md

* [SedEnhanced] clarify in readme

* [SedEnhanced] fix typo in readme

* [SedEnhanced] make `sedRegex` const

* [SedEnhanced] Apply strict checking suggestion

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* [SedEnhanced] remove `export` from `currentReply`

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* [SedEnhanced] fix dodgy patch regex

* [SedEnhanced] improve patch regex further

* [SedEnhanced] add license header

* [SedEnhancer] add reasonable limits to patch `match`

* [SedEnhancer] improve reply logic

* [SedEnhanced] tighten patch further

* [SedEnhanced] use \i for identifier

* [SedEnhanced] add explanation for large pattern

* [SedEnhanced] fix typescript errors

* [SedEnhanced] fix remaining issues (hopefully)

* remove stuff we dont care about because I hate myself

* Update index.ts

* Update index.ts

* revert `[...flags]` back to `flags`

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
2026-06-24 00:11:47 -04:00
Quadrinex
190da1d3c8
Add friends that helped me with the code of ClipUpload as Contributors (#1198)
* Add new developers to constants

* Add new authors to ClipUpload plugin
2026-06-24 00:11:07 -04:00
thororen1234
6f581175a8
Merge remote-tracking branch 'upstream/dev' into dev 2026-06-23 23:50:47 -04:00
thororen
e5bb5af333
CharacterCounter: add selected text count (#4129)
Co-authored-by: V <vendicated@riseup.net>
2026-06-24 01:30:31 +00:00
thororen1234
2c6cd72a53
Merge remote-tracking branch 'upstream/dev' into dev 2026-06-15 19:46:24 -04:00
NightmareSan7
d564fc4025
BetterRoleContext: support role headers in member list (#4276)
Co-authored-by: Vendicated <vendicated@riseup.net>
2026-06-14 15:12:06 +02:00
SobakinTech
476a6b0ac3
new plugin: StopAutoUnread (#1171)
* StopAutoUnread: Add plugin

* Update index.ts

* Update index.ts

---------

Co-authored-by: thororen <78185467+thororen1234@users.noreply.github.com>
2026-06-12 16:53:18 -04:00
thororen1234
2f5870adf8
Merge remote-tracking branch 'upstream/dev' into dev 2026-06-09 22:35:08 -04:00
Clov
91fef8f622
SupportHelper: improve snippet functionality (#4282) 2026-06-08 14:50:16 +00:00
nemmy
9b3d39d055
update clipupload to support parsing from existing metadata (#1148)
* update clipupload to support parsing from existing metadata

* fuck you greptile

* add self as author
2026-06-07 13:13:33 -04:00
Quadrinex
dd7bdad8f4
feat(plugin): add ClipUpload (#1124)
* feat(plugin): add ClipUpload

* fixes

* fix(clipUpload): address review feedback

* fix(clipUpload): mark desktop-only plugin

* fix(clipUpload): show file selection errors

* fix(clipUpload): limit clip participants to friends

* Add credit to the original script
https://gist.github.com/BachLe2000/2487b1df2ac45ae94ad3e06191188655

* redo alot

* Update upload.ts

* make date input look better

* Update fields.tsx

---------

Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
2026-06-03 11:58:39 -04:00
thororen1234
03b6c19441
EquicordDevs: echo -> amy 2026-05-30 09:14:13 -04:00
thororen1234
0c84785080
Fix const formatting 2026-05-20 09:44:39 -04:00
yafyx
768b932570
feat: add MarkdownTables plugin (#1089)
* feat: add MarkdownTables plugin

* bleh

---------

Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
2026-05-19 08:52:53 -04:00