Commit graph

37 commits

Author SHA1 Message Date
Cain Atkinson
bc03464da3
[Plugins] Allow plugins to still load if they fail to update (#85)
* [Plugins] allow plugins to load if they fail to update
On poor quality networks, plugins can fail to update. This shouldn't mean that they aren't loaded, however.

* [Plugins] Log fetch error to Debug Logs not console

---------

Co-authored-by: Beef <beefers@riseup.net>
2023-05-14 23:09:37 +01:00
Beef
3448a3b2cb [Plugins] Allow not exporting anything 2023-04-16 14:02:22 +01:00
Beef
85d0bd263b [Global] Code cleanup pass 2023-04-15 19:54:23 +01:00
Amsyar Rasyiq
20310db733
[Themes] Implement chat background image (#64)
* [Themes] hardcode fuyu chat bg

* [Themes > BG] listen to theme file

* remove .apply()

* some uhh misc changes

* readd

* how

* [Global] Minor changes

---------

Co-authored-by: Beef <beefers@riseup.net>
2023-04-15 17:08:08 +01:00
Beef
b271240f76 [TS] Completely remove Indexable from Vendetta 2023-04-15 03:04:48 +01:00
Beef
5344f0017a
[SafeMode] Initial implementation (#61)
* [UI > Components] Add Discord's button

* [SafeMode] Initial work, basic ErrorBoundary patch

* [SafeMode] Custom error boundary (#57)

* [SafeMode] Add mostly complete custom error boundary

* [SafeMode] Use Button from @ui/components in error boundary

* [SafeMode] Wrap the error boundary in our own error boundary

* [SafeMode > ErrorBoundary] Code-style changes

---------

Co-authored-by: Beef <beefers@riseup.net>

* [TS] Add basic type for Discord's button

* [UI] Move Codeblock to components, and use it

* [UI > Settings] Allow disabling the ErrorBoundary in CustomPage

* [UI > Settings] Move the ErrorBoundary triggers to Developer

* [TS] Add Codeblock to types

* [TS] Use ButtonColors in Button type

* [SafeMode > ErrorBoundary] Rework

* [UI] Add HelpMessage to components

* [SafeMode] Proper implementation

* [Global] SafeMode is optional (#59)

* [UI > Developer] Restore the balance

* [SafeMode > ErrorBoundary] Optimise for tablet UI

* [SafeMode] Last-minute fixes

---------

Co-authored-by: Jack <30497388+FieryFlames@users.noreply.github.com>
Co-authored-by: Jack Matthews <jm5112356@gmail.com>
2023-04-13 19:42:14 +01:00
Beef
f85fc4b00c [Plugins] Start immediately after fetch (closes #54) 2023-04-11 22:38:05 +01:00
Beef
aff1c83e94 [Global] Tidy usage of native modules 2023-04-05 20:40:17 +01:00
Beef
c8f54c1b0c [Plugins] Delete plugin data on removal 2023-04-04 19:57:49 +01:00
Beef
7755f97ab2 [Plugins] Update disabled plugins 2023-02-20 18:58:07 +00:00
Beef
605fd3d73f [Plugins] Give plugins their ID on VendettaPluginObject 2023-02-20 18:47:30 +00:00
Beef
77dd4503b7 [Plugins] Properly handle errors in UI 2023-02-20 18:43:50 +00:00
Beef
a039d183b7 [Plugins] Tidy import code 2023-02-19 22:35:53 +00:00
Beef
6e75d64c05 [Plugins] Move plugin-specific logger 2023-02-19 22:29:25 +00:00
Jack Matthews
a13b6e210c [Plugins] Give plugins their own logger 2023-02-17 19:33:04 +00:00
Beef
c9aeefe419 [Plugins] Remove hash-updating TODO, as it is done 2023-02-16 02:17:38 +00:00
redstonekasi
c2ebff3e93 [Plugins] Properly await plugin start in initialization 2023-02-08 21:06:57 +00:00
redstonekasi
1840577fb5
[Global] Loader config and identity (#17)
* [TS] Add definition for DCDFileManager

* [Storage] Introduce backends

* [Settings] Add loader config

* [TS] Update storage definitions

* [TS] Update loader config and identity types

* [Loader] Expose loader config and identity

* [UI] Actually update UI for the new loader config fields
2023-02-06 07:48:55 +00:00
redstonekasi
cfccd5f5b2 [Plugins] Normalize ID in anything that uses them 2023-02-06 00:05:12 +00:00
Beef
6ed08a0ac9 [Plugins] Fix updating, and make it hash-based 2023-02-05 23:30:51 +00:00
Beef
421f7603cf [Plugins] I can be a little silly 2023-02-05 00:10:34 +00:00
Beef
a97293673d [UI] Move to Discord's navigation stack 2023-02-04 22:37:28 +00:00
Beef
2a50814721 [Utils > safeFetch] Implement 2023-02-04 16:54:03 +00:00
Beef
0ba9ee600c [Global] Major refactors, allow unloading! 2023-02-04 02:30:46 +00:00
redstonekasi
25b90e22d3 [Plugins] Fix plugin loading 2023-01-30 19:08:58 +00:00
Beef
44652c4002 [Plugins] Rework and refactor 2023-01-30 00:40:56 +00:00
redstonekasi
4c9fe8fcaf
[Storage] Rework everything (#10)
* [storage] rework everything

* [storage] expose createProxy

* [storage] add useProxy hook

* [storage] fix settings.ts

* [Storage] Implement wrapSync, fix UI

* [storage] fix storage

* [plugins] re-add plugin loading

* [storage] fix fix storage

* [storage] make wrapSync more magical

* [storage] save deletes

* [ui] hack around plugin removal... again

* [plugins] make plugin storage work

* [storage] expose api

---------

Co-authored-by: Beef <beefers@riseup.net>
2023-01-29 21:05:47 +00:00
Beef
a8b5beff6e [Cleanup] Several small cleanups 2023-01-14 02:39:10 +00:00
Beef
01a05a8b9d [Storage] Expose settings on window, plugin storages 2023-01-10 22:05:40 +00:00
Beef
a46c9c8828 [Storage] Proper persist implementation 2023-01-10 08:05:03 +00:00
Beef
e51ae60aef [Hotfix] Check if plugin is enabled when removing 2023-01-07 23:21:29 +00:00
Beef
4104d637f1 [Plugins] Proper persistence! 2023-01-07 23:05:14 +00:00
Beef
0fe5d30bbc [Plugins] Basic implementation of plugin settings 2023-01-05 23:07:58 +00:00
Beef
62933bc5ba [Plugins] Move to support polymanifest 2023-01-04 22:39:28 +00:00
Beef
57df878f65 [Plugins] Minor but necessary fixes 2023-01-04 08:01:56 +00:00
Beef
5c4026685e [Plugins] Implement proper execution 2023-01-03 08:05:16 +00:00
Beef
7465e42354 [Plugin] Basic, non-functional implementation 2023-01-03 00:18:19 +00:00