Dragory
9250c84637
Reorganize project. Add folder for shared code between backend/dashboard. Switch from jest to ava for tests.
2019-11-02 22:11:26 +02:00
Dragory
a1a5110c8d
Documentation work. Add command info for all Utility plugin commands.
2019-10-25 23:14:21 +03:00
Dragory
ba38d38b75
Apply default overrides *before* custom overrides
2019-10-25 21:44:39 +03:00
Dragory
3707d0202d
Use 'replaceDefaultOverrides' instead of the deprecated '=overrides' syntax
2019-10-25 20:22:00 +03:00
Dragory
9ac761b4eb
Cache invites when resolving them
2019-10-13 00:21:35 +03:00
Dragory
08dbfaef5b
automod: don't use log system for alert actions, require channel id directly instead; allow disabling logging from specific rules
2019-10-11 23:16:15 +03:00
Dragory
804223489d
Docs updates
2019-10-05 14:46:00 +03:00
Dragory
b603edb7d7
Add usageGuide/configurationGuide to PluginInfo, make trimPluginDescription dynamic
...
Previously trimPluginDescription was hardcoded to trim 6 spaces from
the beginning of every line. Now the function looks at the last non-
empty line and uses its indentation to determine how many spaces to
trim from the other lines.
2019-09-29 15:55:17 +03:00
Dragory
c4ba494904
Update to Knub 24. Update Node typings to fix error with [util.inspect.custom] property.
2019-09-22 17:06:22 +03:00
Dragory
12f25346ec
More documentation work
2019-08-22 02:58:32 +03:00
Dragory
9e69b3bf5b
Auto-generate plugin docs (WIP)
2019-08-22 01:22:26 +03:00
Dragory
9dc0b9613a
Add property/type for plugin info in ZeppelinPlugin
2019-08-21 22:07:13 +03:00
Dragory
846e623e3e
Initial work on new automod
2019-08-18 16:40:15 +03:00
Dragory
67454a10eb
Some improvements to 'unknown member' error reporting
2019-08-04 16:51:42 +03:00
Dragory
6fa0a55b28
Fix for non-object-literals in deepKeyIntersect
2019-08-04 16:47:42 +03:00
Dragory
82bd35f3fe
Forgot to commit these a couple commits ago
2019-08-04 15:46:36 +03:00
Dragory
242bfe2b39
Configs are not decoded as well as validated by io-ts. Improvements to config validation, error messages, and TSafeRegex type.
2019-08-04 15:44:41 +03:00
Dragory
fba6ae96ba
Add forceFresh parameter to resolveMember. Clean up resolveUser/resolveMember code.
2019-08-04 13:14:23 +03:00
Dragory
28b4541e79
Fix unknown property validation; fix override validation; be clear about which property is unknown
2019-07-22 13:09:05 +03:00
Dragory
24afc0a503
Typing fixes; show last reload time in !about
2019-07-22 00:09:45 +03:00
Miikka
a161e2635f
Merge pull request #10 from DarkView/FixMutingTheBot
...
Include or check to see if the acted on member is the bot
2019-07-11 12:36:17 +03:00
Dragory
3f4724b699
Switch from ajv to io-ts for config validation; validate configs on save in the API/dashboard; start work on creating io-ts schemas for all plugins
2019-07-11 12:23:57 +03:00
Nils Blömeke
3ca55bbbf5
Include or check to see if the acted on member is the bot
2019-06-17 19:08:15 +02:00
Dragory
cf81152f2f
Make plugin schema & validation static
2019-05-25 14:39:26 +03:00
Dragory
f8b2c71fef
User resolving optimizations + debug logging
2019-05-02 18:14:36 +03:00
Dragory
ba7fbd87a7
Add custom argument types for deep-resolved users/members, use these in some places. Deprecate unknownUser (constant) and replace with instances of UnknownUser (class).
2019-04-20 19:03:30 +03:00
Dragory
9a206455dc
Deprecate GuildActions. Fix double case posting when muting a user for message spam. Update to new mute/case style when muting a user for "other" spam.
...
GuildActions turned out to be a fairly pointless abstraction in the end.
It didn't really solve the problems it was meant to solve (that is,
reduce code spaghetti by having all inter-plugin calls go through a
single service, and allow easier ways to replace core plugins with
alternatives that share the same interface) any better than simply
using `this.getPlugin()` when needed, and introduced extra complexity
and made static analysis messier.
2019-04-20 17:36:28 +03:00
Dragory
4110239f30
Add !help
2019-04-13 03:54:36 +03:00
Dragory
289b425a25
Update to Knub 19.1.1 and update plugins accordingly
2019-04-13 01:44:18 +03:00
Dragory
1c77269643
Add types for all plugin configs and permissions. Update code to work with Knub 18.
2019-03-04 21:44:04 +02:00
Dragory
b0d2b984a4
ZeppelinPlugin: add utility function to check if we can use an emoji
2019-02-09 14:34:42 +02:00
Dragory
b673672761
Fix ZeppelinPlugins not loading properly
2019-02-06 20:06:03 +02:00
Dragory
0aa1c53189
Add support for plugin option schema validation
2019-01-19 15:39:04 +02:00
Dragory
ed4c85aa89
Fix error introduced in the update to Knub 14.0.0 in ZeppelinPlugin
2019-01-03 06:17:39 +02:00
Dragory
c30f47d2ce
Move canActOn to ZeppelinPlugin base class
2018-12-15 17:24:09 +02:00
Dragory
1020747398
Use actions/events for plugin interoperability. Move base case and mute functionality to their own plugins.
2018-11-25 17:04:26 +02:00