* 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>
* 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>
* feat(vcNarratorCustom): add sound support
* use useForceUpdater instead of React.useReducer
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* removed mp4 and webm because they aren't supported
---------
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
- Add 'Copy Server Profile Colors' context menu item when guild-specific
theme colors exist
- Use UserProfileStore.getGuildMemberProfile for guild-specific colors
- Replace console.error with Logger
- Add Gir0fa as contributor
* add custom status timeouts
patch the native status menu so idle, dnd, and invisible can use configurable timeout presets without replacing discord's ui
add a settings driven preset editor with reorder controls, movable forever support, and per status direct click defaults while keeping the preset list as the single source of truth and using discord's native timed status action
Signed-off-by: morsz <morsz@morsz.dev>
* clean up custom status timeouts
* framework
* Update index.tsx
---------
Signed-off-by: morsz <morsz@morsz.dev>
Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
Co-authored-by: creations <creations@creations.works>
* fix(FileUpload): use proxy more aggressively on bop, also refactor s3 helper
* fix(FileUpload): handle copying to the clipboard if theres no text to copy
* feat(FileUpload): intercept discords file upload button
* me being mean
---------
Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
* feat(HidePersonalization): Add a plugin that allows to hide personalization features such as avatar decorations, nameplates, profile effects, and clan tags with customizable options
* fix(HidePersonalization): Fix no predicate bool handling on clan tags
* feat(Cleanify): Introduce Cleanify plugin to enhance UI customization and migrate settings from BetterUserArea and Anammox. This plugin combines the functionality of them and adds new features
* rename(Cleanify -> Declutter): Rename plugin and add Questify conflict detection
* Update index.tsx
* Update index.tsx
* Update index.tsx
* Update index.tsx
* Update index.tsx
---------
Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com>
* feat(triviaAI): initial commit
* feat(triviaAI): configurable api endpoint
* feat(triviaAI): better descriptions and stuff ig
* feat(triviaAI): add decancer support
* chore(triviaAI): set autorespond to false by default
* refactor: use logger instead of console.log
* chore: ai wants periods
* unfeat: remove decancer because no external libs
* chore: consistent imports
* refactor: readability
* refactor: error handling
* refactor: simplify loop
* refactor: import insertTextIntoChatInputBox from @utils/discord
* feat: ok maybe toasts are not unnecessary
* feat: check if api key, endpoint or models are set before doing anything
* refactor: remove too many if statements