Zack Rauen
f144934cd7
use const instead of let
2018-08-09 01:01:32 -04:00
Zack Rauen
9473e419b4
add documentation to patcher
2018-08-09 00:54:35 -04:00
Zack Rauen
a081a8fdf9
make patcher more robust + fix collisions
2018-08-09 00:22:10 -04:00
Zack Rauen
e660ce6a31
remove redundant array check, fix strings
2018-08-08 23:39:57 -04:00
Zack Rauen
5c7b10299b
update normalizer
2018-08-08 23:29:54 -04:00
Jiiks
26f386ad31
Setting hints for devtools
2018-08-07 16:07:06 +03:00
Jiiks
b861280548
Use path.join
2018-08-07 16:02:10 +03:00
Jiiks
9d22293927
Remove listener don't add another one
2018-08-07 13:37:23 +03:00
Jiiks
c3d8f4090e
try catch missing extension
2018-08-07 13:07:38 +03:00
Jiiks
3f00dba937
Devtool modules
2018-08-07 12:48:50 +03:00
Alexei Stukov
9f00aed4fa
Merge pull request #202 from JsSucks/bdapi
...
Online theme browser
2018-08-07 07:21:24 +03:00
Jiiks
685d0f4bac
Dummy search
2018-08-07 07:17:44 +03:00
Alexei Stukov
a805c8f75a
Merge pull request #201 from samuelthomas2774/channel-components
...
Channel components
2018-08-07 06:16:35 +03:00
Alexei Stukov
ce23a39f83
Merge pull request #200 from samuelthomas2774/scheme-icons
...
Settings scheme icons
2018-08-07 06:15:21 +03:00
Samuel Elliott
c0a971a27b
Fix element is not defined
2018-08-07 00:08:13 +01:00
Jiiks
7f567f6e9d
Correct padding
2018-08-06 21:45:41 +03:00
Jiiks
865fcee12d
Remote card styling
2018-08-06 21:42:09 +03:00
Jiiks
6b3fc39a1d
Use dummy themes for now
2018-08-06 21:37:15 +03:00
Jiiks
7b1f36cb9c
account-cicle material icon
2018-08-06 21:22:11 +03:00
Jiiks
f6f308baa2
Remotecard component for online content
2018-08-06 20:52:10 +03:00
Jiiks
e170ed608e
online themes loading
2018-08-06 18:14:25 +03:00
Jiiks
a432d78953
Structure
2018-08-06 17:05:36 +03:00
Jiiks
778eb0474f
Remove not so nice looking border
2018-08-06 16:04:50 +03:00
Jiiks
8c1f196675
New logos
2018-08-06 16:04:49 +03:00
Jiiks
e25ac66abf
Use bd green, override bdblue with it for now
2018-08-06 16:04:49 +03:00
Jiiks
8331b30d73
Remove not so nice looking border
2018-08-06 15:25:53 +03:00
Jiiks
7083577db2
New logos
2018-08-06 15:23:29 +03:00
Jiiks
1b91c97c24
Use bd green, override bdblue with it for now
2018-08-06 15:17:57 +03:00
Jiiks
7c02a51a46
Base connectivity stuff
2018-08-06 13:31:49 +03:00
Samuel Elliott
0e34fdaa8d
Fix scheme matching
2018-08-06 10:28:35 +01:00
Samuel Elliott
e2f05d9a64
Patch all channel components
2018-08-06 04:48:10 +01:00
Samuel Elliott
13437c56d4
Search all matching elements instead of just the first and don’t fail if a filter function is passed
2018-08-06 04:30:48 +01:00
Samuel Elliott
4b4b3c341f
Update content/scheme icons properly
2018-08-06 02:55:08 +01:00
Samuel Elliott
d4c883a5d7
Add using a file as a scheme icon
2018-08-06 02:45:59 +01:00
Samuel Elliott
342b4cddc4
Fix unread mentions indicator position
2018-08-04 00:54:44 +01:00
Samuel Elliott
6ea85341b9
Fix keybind settings not activating
2018-08-03 12:57:30 +01:00
Samuel Elliott
9af8a71e17
Add using a file as a plugin/theme’s icon
2018-08-02 20:24:56 +01:00
Samuel Elliott
a5ff8bbdb6
Fix removing keybind-activated listeners
2018-08-01 21:17:36 +01:00
Samuel Elliott
16bb32b86c
Remove IterableWeakCollections and deactivate keybind settings when possible
2018-08-01 21:08:45 +01:00
Samuel Elliott
8826a7b984
Use an observer to detect new React components
2018-08-01 20:48:09 +01:00
Samuel Elliott
5b419cb8ab
Use ReactComponent.forceUpdateAll to rerender components after patching them
2018-08-01 20:41:53 +01:00
Samuel Elliott
db21f4eb13
Fix Guild component selection
2018-08-01 20:40:03 +01:00
Samuel Elliott
3a7ac06ce3
Fix errors when rendering system messages
2018-08-01 20:28:35 +01:00
Samuel Elliott
0c8279311e
Fix Message component selection and add bd-isGuildOwner and bd-isGuildMember classes
2018-08-01 20:18:47 +01:00
Samuel Elliott
331b2b396a
Fix emotes
2018-08-01 19:58:52 +01:00
Samuel Elliott
a20473d718
Add a function to force update all instances of a component
2018-08-01 19:31:48 +01:00
Samuel Elliott
1a12430322
Add getting all state nodes to Reflection
2018-08-01 15:50:10 +01:00
Samuel Elliott
7a416c0ff7
Fix MessageGroup component selection
2018-08-01 13:53:59 +01:00
Samuel Elliott
81e392c0f6
Fix request module not found
2018-07-21 23:10:33 +01:00
Samuel Elliott
1d887967d9
Add an option to add additional classes to toasts
2018-07-20 12:04:16 +01:00
Samuel Elliott
a95b97b3c0
Requested changes from JsSucks/BetterDiscordApp#194
2018-07-19 22:21:20 +01:00
Samuel Elliott
007637a557
Merge remote-tracking branch 'upstream/toasts' into toasts
...
# Conflicts:
# client/src/modules/pluginapi.js
# client/src/ui/bdui.js
# client/src/ui/dom.js
# client/src/ui/ui.js
# package-lock.json
# package.json
2018-07-19 22:03:29 +01:00
Samuel Elliott
6ded1c62e5
Prevent modals from being added to the stack more than once
2018-07-19 00:14:03 +01:00
Samuel Elliott
27f1eec967
Use a counter instead of the current time for modal IDs to avoid duplicates when multiple modals are opened at the same time
2018-07-18 22:17:50 +01:00
Samuel Elliott
6b97505f66
Remove unused imports
2018-07-18 20:57:05 +01:00
Samuel Elliott
df471161a7
Fix leaks in keybind settings
2018-07-18 20:55:57 +01:00
Samuel Elliott
78079588ea
Fix Message component selection
2018-07-18 19:18:06 +01:00
Samuel Elliott
b4ebd6c08a
Always activate keybind settings
2018-07-18 19:18:06 +01:00
Samuel Elliott
e6f2f518e6
Properly unbind events for emote autocomplete and dropdowns
2018-07-18 19:18:06 +01:00
Samuel Elliott
aff89371e6
Fix all modals closing on escape key press
2018-07-08 13:52:29 +01:00
Samuel Elliott
98a7a71b87
Fix updater incorrectly showing an update is available
2018-07-07 22:05:36 +01:00
Samuel Elliott
98a0717bba
Use webpack named modules and eval source map plugins in development and disable Babel’s debug info
2018-07-07 20:00:15 +01:00
Samuel Elliott
7c8c8a754f
Use request instead of axios
2018-07-07 19:43:17 +01:00
Samuel Elliott
f2c31d866d
Add axios export
2018-07-07 14:29:44 +01:00
Samuel Elliott
cd77d659a5
Use axios and http/https to check for updates
2018-07-07 14:23:43 +01:00
Samuel Elliott
b6f38a73dc
Add function to get classes and fix emote autocomplete injection
2018-07-07 01:17:26 +01:00
Samuel Elliott
c384920275
Add WebpackModules wait functions to the plugin API
2018-07-07 01:10:39 +01:00
Samuel Elliott
8c0b73625d
Add a settings proxy so settings values can be updated/retrieved like a plain object
2018-07-05 01:39:30 +01:00
Samuel Elliott
55cd75b5f4
Add settings section to edit window options
2018-07-05 01:26:04 +01:00
Samuel Elliott
eae1bdf3a6
Fix Utils is not defined
2018-06-26 23:41:39 +01:00
Samuel Elliott
ebe195f078
Delete old logs on startup
2018-06-26 23:25:43 +01:00
Samuel Elliott
e2b68788bd
Add functions to wait for modules to be loaded
2018-06-24 19:56:05 +01:00
Samuel Elliott
c8ca4fcfce
Fix friend source flags
2018-06-24 19:50:21 +01:00
Samuel Elliott
2c38433a2b
Add extra classes to messages, channel members and channels
2018-06-24 19:48:45 +01:00
Samuel Elliott
ee0b13dab2
Emit events for when webpack modules are loaded
2018-06-23 23:15:45 +01:00
Samuel Elliott
4d2347cf84
Make sure file settings are updated properly when removing items
2018-06-23 22:59:13 +01:00
Samuel Elliott
7cf40a9ee4
Add SettingsWrapper to CommonComponents
2018-06-22 23:57:07 +01:00
Samuel Elliott
70f678119a
Add support for ES6 modules in plugins
2018-06-22 23:55:53 +01:00
Samuel Elliott
0a2b967e36
Fix removing items from file settings
2018-06-22 23:16:42 +01:00
Samuel Elliott
a2367299b7
Don’t load emotes unless they’re enabled
2018-06-12 20:56:40 +01:00
Samuel Elliott
bbcc36647d
Add class normaliser
...
Normalises and prefixes all classes with `da-`
2018-06-12 20:56:07 +01:00
Samuel Elliott
906140686f
Fix Utils is not defined
2018-06-10 22:51:52 +01:00
Samuel Elliott
cecaf314f9
Fix channel.setNsfw
2018-06-10 22:41:14 +01:00
Samuel Elliott
4a3bb89259
Restore common in main and add note about __non_webpack_require__
2018-06-10 22:40:46 +01:00
Samuel Elliott
d7db836e30
Update DOMObserver
...
- Changed observer.subscribe function signature - `observer.subscribe(id, filter, callback, type)` is now `id = observer.subscribe(callback, filter, bind, type === 'filter’)`
- Add a function to subscribe to mutations affecting elements matching a query selector
- Some internal changes
2018-06-10 22:35:44 +01:00
Samuel Elliott
1eca4bcec7
Add ReactHelpers and ReactAutoPatcher to global._bd
2018-06-10 22:21:09 +01:00
Samuel Elliott
c02052a982
Remove emote.name
2018-06-10 22:20:17 +01:00
Samuel Elliott
be841f0426
Add the Manip class as an export of ui/dom.js
2018-06-10 22:17:37 +01:00
Samuel Elliott
35cedbdbb3
Use a single badge component
2018-06-10 21:28:23 +01:00
Samuel Elliott
17597e2c30
Add Vue wrapper for React
2018-06-10 21:22:01 +01:00
Samuel Elliott
204dd76e7b
Use the correct name for the user popout component
2018-05-29 21:59:54 +01:00
Samuel Elliott
3e41a11197
Allow forcefully unloading plugins without reloading Discord
2018-05-29 21:48:58 +01:00
Samuel Elliott
68d4617e46
Use the same format as React.createElement for VueInjector.createReactElement
...
Allows props to flow down to Vue components cleanly
2018-05-29 21:47:44 +01:00
Samuel Elliott
4654025423
Properly destroy Vue components after they’re unmounted by React
2018-05-29 18:46:08 +01:00
Samuel Elliott
231afa8ed6
Add the option to mount Vue components at the top of the React component
2018-05-29 18:35:40 +01:00
Samuel Elliott
c3ff71ff85
Hide the ; before emotes in autocomplete and add the case insensitive flag
2018-05-29 17:00:05 +01:00
Samuel Elliott
0e99b219c1
Move emote autocomplete injector to the emote module
2018-05-29 16:58:57 +01:00
Samuel Elliott
13508b449d
Add some libraries to Vendor
2018-05-29 16:49:37 +01:00
Samuel Elliott
e57e1f51ea
Fix getModuleByDisplayName
2018-05-29 15:40:14 +01:00
Samuel Elliott
c345ab1419
Indentation
2018-05-29 15:39:32 +01:00
Samuel Elliott
bee869340d
Disable errors for __[non_]webpack_require__
2018-05-28 04:17:38 +01:00
Samuel Elliott
bba1165c77
Wrap Discord’s preload script instead of enabling Node integration
2018-05-28 01:43:25 +01:00
Samuel Elliott
a5c7aaab3b
Allow patching arrays
2018-05-21 20:49:21 +01:00
Samuel Elliott
cfaf581ae1
Don’t use Moment.js
...
Plugins can still use Discord’s Moment.js with WebpackModules
2018-05-21 16:41:41 +01:00
Samuel Elliott
665c1d5fe4
Use local Moment.js instead of Discord’s
...
Fixes a recursive dependency issue
2018-05-20 00:46:15 +01:00
Samuel Elliott
8d8c1a8080
Add getting webpack modules as properties of the WebpackModules object
...
`WebpackModules.React` instead of `WebpackModules.getModuleByName('React')`
2018-05-20 00:36:14 +01:00
Samuel Elliott
8827bdb8b0
Fix messages with emotes not being updated when emotes are disabled
2018-05-20 00:27:02 +01:00
Samuel Elliott
cd81f925cb
Fix for webpack 4
2018-05-20 00:24:21 +01:00
Samuel Elliott
d7f4c651b6
Fix errors
2018-05-15 20:07:34 +01:00
Samuel Elliott
f2159f1031
Fix error when unmounting a component
2018-05-15 16:54:22 +01:00
Samuel Elliott
581c94f6b3
Add React wrapper for Vue
2018-05-14 17:56:23 +01:00
Samuel Elliott
9eb8eaa906
Add DOM, DOMObserver and VueInjector to the plugin API
2018-05-14 16:34:40 +01:00
Samuel Elliott
9915ef8b19
Fix for Linux
2018-05-13 16:16:51 +01:00
Zack Rauen
2d784b48f4
add toasts
2018-05-12 23:17:04 -04:00
Samuel Elliott
cee2a6ec34
Fix badges not being rendered when jumping to a message without a flash
2018-05-05 11:51:08 +01:00
Samuel Elliott
64e855ab2d
Fix badges not being rendered when jumping to a message
2018-05-05 11:39:56 +01:00
Samuel Elliott
5aa921ae4b
Fix EventsWrapper not unsubscribing from events
...
Also changed it to use removeListener so it can be used with normal EventEmitters
2018-05-05 11:17:26 +01:00
Samuel Elliott
40a72458e2
Fix Channel component
2018-05-03 19:52:23 +01:00
Samuel Elliott
dc2be5c410
Add ReactHelpers to the plugin API
2018-05-03 15:56:07 +01:00
Samuel Elliott
640ec66abc
Some comments and fix updateSystemChannel
2018-04-30 21:12:50 +01:00
Samuel Elliott
3aedcfdd06
Add updating a guild’s icon/splash image from a file
2018-04-30 20:46:55 +01:00
Samuel Elliott
71fe549ee6
Add some permission checks
2018-04-30 20:19:54 +01:00
Samuel Elliott
cbe1de98a5
Add updating guilds
2018-04-30 20:18:25 +01:00
Samuel Elliott
5a58c1c6ce
Add updating channel attributes
2018-04-30 19:17:04 +01:00
Samuel Elliott
591d44dee4
Add creating channels
2018-04-30 19:16:06 +01:00
Samuel Elliott
6da58ef6bb
Move Channel.openSettings to GuildChannel.openSettings, rename defaultChannel to isDefaultChannel and add GroupChannel names
2018-04-30 19:14:34 +01:00
Samuel Elliott
85d5de9791
Fix ChannelMember returning wrong component
2018-04-30 19:12:21 +01:00
Samuel Elliott
5ce78f4b32
Update layer classes
2018-04-29 17:56:23 +01:00
Samuel Elliott
2499f8c0ab
Get class names from internal modules
2018-04-29 17:41:12 +01:00
Samuel Elliott
3f2eb1047e
Use top/left to position tooltips/popovers and remove BdMenuItems from global
2018-04-29 17:35:30 +01:00
Samuel Elliott
ac79bbb99b
Update classes
2018-04-29 16:30:21 +01:00
Samuel Elliott
1c4fb0b5ea
Rename HTMLUtils to SimpleMarkdown
2018-04-29 02:19:08 +01:00
Samuel Elliott
2e2d0dd6f6
Make some Vue components available to plugins, add highlight.js module and some tidying
2018-04-29 01:57:09 +01:00
Samuel Elliott
a6c91d5e27
Add updating a user’s roles
2018-04-28 00:15:17 +01:00
Samuel Elliott
949206738b
Add user notes
2018-04-27 23:51:37 +01:00
Samuel Elliott
4dc715a39a
Patch all components at once instead of waiting for the previous component to be found
2018-04-27 19:05:00 +01:00
Samuel Elliott
36d7554b46
Add user popout data attributes
2018-04-27 19:02:35 +01:00
Samuel Elliott
d42e8f66ca
Fix badges not being rendered on update
2018-04-27 17:39:28 +01:00
Samuel Elliott
244b7e5bd1
Move filters to common
2018-04-27 17:33:05 +01:00
Samuel Elliott
ca7a7c1f91
Fix injected profile badges being removed
2018-04-27 16:12:46 +01:00
Samuel Elliott
504221ce28
Fix getComponentByRegex and add Filters to the plugin API
2018-04-27 16:06:51 +01:00
Samuel Elliott
1e643b8164
Patch the UserProfileModal component instead of injecting badges when the modal is opened
2018-04-27 16:00:27 +01:00
Samuel Elliott
0944c0708f
Add user profile modal data attributes
2018-04-27 15:53:49 +01:00
Samuel Elliott
17575fc6a1
Add filtering all components to ReactComponents
2018-04-27 15:52:43 +01:00
Samuel Elliott
1354b884b4
Add getting all components to reflection
2018-04-27 15:51:59 +01:00
Samuel Elliott
1ace26b67f
Select the channel when sending messages
2018-04-26 19:52:56 +01:00
Samuel Elliott
d1cce95abe
Fix colour picker/dropdown options being hidden when in a drawer
2018-04-26 01:08:14 +01:00
Samuel Elliott
22fbb7b5bd
Fixed favourite emotes array being undefined
...
https://cdn.discordapp.com/attachments/400734824740028419/438847211325882370/unknown.png
2018-04-26 00:47:42 +01:00
Samuel Elliott
34ebab7c21
Use APIModule directly to edit messages
2018-04-25 23:57:07 +01:00
Samuel Elliott
5e8579e4dc
Use APIModule directly to delete messages
2018-04-25 23:56:10 +01:00
Samuel Elliott
4721f66dab
Comments
2018-04-25 23:54:26 +01:00
Samuel Elliott
02b313f2e6
Add checks for whether the user can delete a message
2018-04-25 23:02:47 +01:00
Samuel Elliott
b0ae424adb
Change all properties to camel case
2018-04-25 22:54:41 +01:00
Samuel Elliott
5a6fb990c7
Add sending local bot messages
2018-04-25 13:54:33 +01:00
Samuel Elliott
c294df6b26
Fix nickname checks and add changing nicknames programmatically
2018-04-25 13:40:18 +01:00
Samuel Elliott
c3e4563aeb
Add multi option radios
2018-04-25 13:21:18 +01:00
Samuel Elliott
525fd3145d
Merge branch 'master' into discord-api
2018-04-17 20:17:04 +01:00
Samuel Elliott
32452d918a
Fix guild member methods and set the guild/channel settings window section before opening it
2018-04-15 02:27:01 +01:00
Samuel Elliott
e524c50b65
Add opening the user’s profile modal
2018-04-15 02:26:21 +01:00
Samuel Elliott
96952c3fef
Fix guild.owner
2018-04-15 00:54:33 +01:00
Samuel Elliott
ad710de008
Fixes and add file header to list
2018-04-14 21:49:16 +01:00
Samuel Elliott
21ff9d200c
Some comments
2018-04-14 19:42:58 +01:00
Samuel Elliott
a1c6f5d5fd
Separate messages into their types
2018-04-14 19:13:26 +01:00
Samuel Elliott
6d64d17b7d
Add embeds
2018-04-14 18:43:18 +01:00
Samuel Elliott
695d088f60
Add reactions
2018-04-14 18:08:57 +01:00
Samuel Elliott
bcb888100c
Fix development CSS editor build being copied instead of the release build
2018-04-14 17:51:02 +01:00
Samuel Elliott
146e108874
Add file headers
2018-04-14 17:37:41 +01:00
Samuel Elliott
4837a01812
Add guild emojis
2018-04-14 17:24:07 +01:00
Samuel Elliott
48f4837a24
Wrap User instead of extending it
2018-04-14 17:20:17 +01:00
Samuel Elliott
8b320d2f09
More modals
2018-04-14 17:03:39 +01:00
Samuel Elliott
ac22b14358
Add opening channel/guild settings window
2018-04-14 17:02:06 +01:00
Samuel Elliott
4d5a403d6d
Add user settings
2018-04-14 17:00:33 +01:00
Samuel Elliott
9dc424cc75
Allow after patches to change the return value
2018-04-14 15:17:02 +01:00
Samuel Elliott
1b75753a3d
Add user status/activity
2018-04-14 15:15:13 +01:00
Samuel Elliott
a7b300d233
Check if the member exists before creating a GuildMember
2018-04-14 15:14:31 +01:00
Samuel Elliott
68e42b8b36
Add channel permission overwrites
2018-04-14 14:06:32 +01:00
Samuel Elliott
e061d95ae6
Add roles
2018-04-14 14:06:09 +01:00
Samuel Elliott
33c0732c08
Store objects in a WeakMap
...
So comparisons like `DiscordApi.currentUser === DiscordApi.currentUser` can be true
2018-04-14 00:31:09 +01:00
Samuel Elliott
f1e0350433
Move data types to separate files and further separate channels based of their type
2018-04-14 00:29:03 +01:00
Samuel Elliott
d5f486d1ad
Add shortcut to plugin/theme/extmodule manager content
2018-04-13 19:50:31 +01:00
Samuel Elliott
7fb8337095
Fix for plain CSS themes
2018-04-09 21:12:53 +01:00
Samuel Elliott
7adf63dfa8
Prevent escape closing Discord and BetterDiscord menus/modals at the same time
2018-04-08 19:54:48 +01:00
Samuel Elliott
d2f7e6142f
Fix dropdowns not showing the selected option
2018-04-08 17:00:26 +01:00
Samuel Elliott
b62727b046
Fix channel members not always being rerendered to show badges
2018-04-08 01:37:15 +01:00
Samuel Elliott
f0a337e0ed
Fix custom CSS file not being used if the custom editor CSS is empty
2018-04-08 00:07:23 +01:00
Samuel Elliott
4d0631ba38
Add wait util
2018-04-04 21:53:02 +01:00
Samuel Elliott
d4962bb2ab
Fix settings being partially saved while loading
2018-04-04 21:39:55 +01:00
Samuel Elliott
cf319a2604
Separate load
2018-04-04 21:38:56 +01:00
Samuel Elliott
256db71aa4
Hide emote autocomplete when emotes are disabled
2018-04-04 21:08:50 +01:00
Samuel Elliott
de8601ded4
Show favourite emotes in autocomplete
2018-04-04 20:51:25 +01:00
Samuel Elliott
a96f3b1eb7
Fix border radius of the message input field
2018-04-04 20:36:11 +01:00
Samuel Elliott
a7aa1fa5ec
Fix up/down at the end of the list when the list has less than 10 emotes
2018-04-04 20:34:54 +01:00
Samuel Elliott
027ca8d639
Change plugin API WebpackModules
...
getModule[…] returns a module (first = true)
getModules[…] returns an array (first = false)
2018-04-01 23:17:33 +01:00
Samuel Elliott
a0f60dddb2
Update plugin API (fix Utils not being passed arguments)
2018-04-01 23:12:23 +01:00
Samuel Elliott
a3038c46fd
Undo 10fd25607d (diff-e0997702acb90b93fb46357f7576ab03L423)
2018-04-01 23:02:02 +01:00
Samuel Elliott
d98f152009
Refactor UserProfileModals badges
2018-04-01 22:44:01 +01:00
Samuel Elliott
68beee12d3
Add the BD badge before the server owner icon
2018-04-01 17:39:46 +01:00
Samuel Elliott
4b59b9f65d
Prevent opening the popout when the badge is clicked
2018-04-01 17:35:09 +01:00
Samuel Elliott
85d390e18d
Rerender messages and channel members after patching
2018-04-01 15:24:28 +01:00
Samuel Elliott
3f89286946
Refactor message badges
2018-04-01 15:21:31 +01:00