summary refs log tree commit diff
path: root/src/plugins/example-plugin
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/example-plugin')
-rw-r--r--src/plugins/example-plugin/TestPlugin.ts52
-rw-r--r--src/plugins/example-plugin/TestSettings.ts14
-rw-r--r--src/plugins/example-plugin/plugin.json14
3 files changed, 44 insertions, 36 deletions
diff --git a/src/plugins/example-plugin/TestPlugin.ts b/src/plugins/example-plugin/TestPlugin.ts

index 18e634f7..da25c474 100644 --- a/src/plugins/example-plugin/TestPlugin.ts +++ b/src/plugins/example-plugin/TestPlugin.ts
@@ -1,26 +1,36 @@ -import { setupListener } from "@fosscord/gateway"; -import { Channel, Guild, Plugin, PluginLoadedEventArgs, PluginLoader, PluginManifest, PreMessageEventArgs, PreMessageEventResult } from "@fosscord/util"; +import { + Channel, + Guild, + Plugin, + PluginLoadedEventArgs, + PluginLoader, + PluginManifest, + PreMessageEventArgs, + PreMessageEventResult +} from "@fosscord/util"; import { TestSettings } from "./TestSettings"; export default class TestPlugin implements Plugin { - pluginManifest?: PluginManifest | undefined; - settings: TestSettings = new TestSettings(); - async onPluginLoaded(env: PluginLoadedEventArgs) { - console.log("Test plugin active!"); - if(this.pluginManifest) this.settings = PluginLoader.getPluginConfig(this.pluginManifest.id, this.settings) as TestSettings; - } - async onPreMessage(data: PreMessageEventArgs): Promise<PreMessageEventResult> { - let channel = await Channel.findOne({ where: { id: data.message.channel_id } }); - let guild = await Guild.findOne({ where: { id: data.message.guild_id } }); - let block = data.message.content?.includes('UwU'); - - let result = {cancel: block} as PreMessageEventResult; + pluginManifest?: PluginManifest | undefined; + settings: TestSettings = new TestSettings(); + async onPluginLoaded(env: PluginLoadedEventArgs) { + console.log("Test plugin active!"); + if (this.pluginManifest) this.settings = PluginLoader.getPluginConfig(this.pluginManifest.id, this.settings) as TestSettings; + } + async onPreMessage(data: PreMessageEventArgs): Promise<PreMessageEventResult> { + let channel = await Channel.findOne({ where: { id: data.message.channel_id } }); + let guild = await Guild.findOne({ where: { id: data.message.guild_id } }); + let block = data.message.content?.includes("UwU"); - if(block) { - console.log(`[TestPlugin] Blocked message in ${guild?.name}/#${channel?.name} by ${data.message.author?.username}: ${data.message.content}`); - result.blockReason = "[TestPlugin] Your message contains UwU! Get bamboozled!"; - } + let result = { cancel: block } as PreMessageEventResult; - return result; - } -} \ No newline at end of file + if (block) { + console.log( + `[TestPlugin] Blocked message in ${guild?.name}/#${channel?.name} by ${data.message.author?.username}: ${data.message.content}` + ); + result.blockReason = "[TestPlugin] Your message contains UwU! Get bamboozled!"; + } + + return result; + } +} diff --git a/src/plugins/example-plugin/TestSettings.ts b/src/plugins/example-plugin/TestSettings.ts
index d8c52187..f7ec79ff 100644 --- a/src/plugins/example-plugin/TestSettings.ts +++ b/src/plugins/example-plugin/TestSettings.ts
@@ -1,11 +1,11 @@ export class TestSettings { - someInt: number = 10; - someStr: string = "asdf"; - someBool: boolean = true; - someDate: Date = new Date(); - subSettings: SubSettings = new SubSettings(); + someInt: number = 10; + someStr: string = "asdf"; + someBool: boolean = true; + someDate: Date = new Date(); + subSettings: SubSettings = new SubSettings(); } export class SubSettings { - someStr: string = "jklm"; -} \ No newline at end of file + someStr: string = "jklm"; +} diff --git a/src/plugins/example-plugin/plugin.json b/src/plugins/example-plugin/plugin.json
index f6c1b7ff..4db01152 100644 --- a/src/plugins/example-plugin/plugin.json +++ b/src/plugins/example-plugin/plugin.json
@@ -1,10 +1,8 @@ { - "id": "example-plugin", - "name": "Fosscord example plugin", - "authors": [ - "The Arcane Brony" - ], - "repository": "https://github.com/fosscord/fosscord-server", - "license": "", - "mainClass": "TestPlugin" + "id": "example-plugin", + "name": "Fosscord example plugin", + "authors": ["The Arcane Brony"], + "repository": "https://github.com/fosscord/fosscord-server", + "license": "", + "mainClass": "TestPlugin" }