Commit graph

15 commits

Author SHA1 Message Date
PalmDevs
3f60b4dfb7
feat!: more plugin system improvements + API changes + other fixes
BREAKING CHANGES:

- lib/modules!: Renamed `callBridgeMethod*` to `callNativeMethod*` and interface `Methods` to `NativeMethods`. This is to achieve naming consistency with the native API and be more clear.
- lib/storage!: Renamed to `@revenge-mod/json-storage`. A storage can be in any arbitrary format. While there's little potential for non-JSON storage formats, but the naming should allow for it regardless. This is not a drop-in replacements. There are breaking changes in export names and new APIs.
- plugins/revenge.api.storage!: Renamed to `revenge.api.jsonStorage`. Plugin options are renamed and its structure has changed as well.
- Native now holds the path for official storage APIs. This update uses new paths without any migration!
- lib/plugins!: `Plugin.errors` is now read-only. Use `Plugin.reportError(e)` instead.
- lib/plugins!: `Plugin.flags` has been completely removed in favor of these methods: `Plugin.requireReload()`, `Plugin.disable()`.

OTHER CHANGES:

- Fixed sorting for 'Enabled first'
- Updated native method names to be more consistent
- Cleand up dead code
- Make methods more 'safe' by removing non-null assertion casts
2026-07-09 23:47:53 +07:00
PalmDevs
3ca2f8742d
fix: support Discord's settings refactor
I assume this happened on 330201, but I'm unsure.

This also drops support for any older versions that may not have this change.
2026-05-13 01:22:39 +07:00
tralwdwd
aa07721269
feat(plugins/developer-kit): improve UI for JS eval
Currently the eval is done in a modal which makes it hard to use and means any code written is discarded after pressing evaluate and also it is hard to read output from an alert. This commit improves it by instead having it as a page instead where the code remains after evaluation and outputs the result in a box in the page rather than in an alert.

Eval results are also selectable now, and have display options. And inspecting with zero depth is now possible.

---------

Co-authored-by: PalmDevs <git@palmdevs.me>
2025-12-13 23:16:53 +07:00
PalmDevs
47084f4f52
chore: update dependencies 2025-12-13 22:43:21 +07:00
PalmDevs
d9968c6e22
fix(plugins/developer-kit): use indirect eval 2025-11-12 15:05:50 +07:00
tralwdwd
440c2ab1bd
fix(plugins/developer-kit): eval alert box layout (#8) 2025-11-10 10:27:41 +07:00
PalmDevs
0df3530788
feat(plugins/developer-kit): devtools integration + some fixes 2025-10-14 00:16:49 +07:00
PalmDevs
6dfeccb26a
fix(plugins/developer-kit): access property from globalThis
Prevents "Property '__REACT_DEVTOOLS__' does not exist" on builds without React DevTools.
2025-09-17 18:00:26 +07:00
PalmDevs
5956d19125
chore: use import defer 2025-09-10 00:51:28 +07:00
PalmDevs
15ed4c551b
fix(plugins/developer-kit): use eval 2025-08-03 14:19:19 +07:00
PalmDevs
7a7345d433
fix(plugins/developer-kit): correct Evaluate JavaScript placeholder code 2025-07-26 12:36:43 +07:00
PalmDevs
6e67a8a0e4
chore(plugins/developer-kit): cleanup 2025-07-25 21:20:56 +07:00
PalmDevs
44adc6679f
chore(plugins/settings): start plugin at start stage, add as dependency to developer-kit to prevent race condition 2025-07-21 22:42:37 +07:00
PalmDevs
72f4232a95
feat(plugins/settings): register plugins as own routes instead 2025-07-19 14:01:04 +07:00
PalmDevs
7b99a59a73
chore(lib/plugins): improve plugin manifest consistencies 2025-07-18 18:29:50 +07:00