Reverts the patcher to make it create a new function instead of using proxies
Add support for betterdiscord:// protocol system wide. Doing etterdiscord://store/[name or id] will open the download modal
Also starts to use latest commit api changes
Implements a custom version of discords Spinner component
Also fixes sorting, the last modified one just never got implemented
Hopefully improve the speed of the store
When in an addon release channel, it will preload all addons of that type
FIx weird issue with download endpoint (hopefully)
FIx issue where the install modal cannot close when the download errors
Splits the AddonStore to be 2 seperate stores 1 for each type
Moves the addon store settings into its own collection / folder, in the setting apge
Add a reload button in the store page
When failing to fetch addons (in the store page) if the user is offline, it will wait until the user is online or wait 5 minutes
Fix a bug with the request module where it wouldn't catch errors on ClientRequest
Adds a fallback for when the guild icon is no longer valid / never existed in the installation modal.
Changes BdApi.AddonType.download to BdApi.AddonType.requestDownload, as that name is more like its function
Fixes a few typos with icons
Adds a paginator to the settings page to reduce the lag when clicking on the store
(used to render ~5.3 nodes compared to ~1.3k nodes in the plugin store)
Changes the FS structure to help better support the addon list and addon store
Github icon default size was set to 28 instead of 18, so this is reverted
Add a web object that holds all of the Bd web api and routes
Replace the release embeds in both official betterdiscord official servers in the plugin/theme releases channels
Add 'BdApi.Plugins.download' and 'BdApi.Themes.download' which allows plugins to attempt to download addons,
Pretty simple api just 'BdApi.Type.download(id or name or filename)' and it will show a download modal for that addon
The function will resolve on 3 conditions, if the addon is already installed, if the addon was installed or if the modal was closed
Also start to integrating the addon store into the addon pages. This is currently done really poorly currently
Adds a installation modal
If theres no addon for the passed id in chat, the embed will not render, instead of 'loading' forever
Adding markdown syntax for the betterdiscord prototocol (only for the addon store)